⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 fkz_form.ui.h

📁 Linux下的qt编程示例
💻 H
字号:
/****************************************************************************** ui.h extension file, included from the uic-generated form implementation.**** If you wish to add, delete or rename functions or slots use** Qt Designer which will update this file, preserving your code. Create an** init() function in place of a constructor, and a destroy() function in** place of a destructor.*****************************************************************************/float G[6];float k3 = 1.3;int X3[1000], RY3[1000];int DY3[1000];int MY3[1000];int N3;QString fkzfile;void FKZ_Form::init(){    fstream file;    file.open("/root/FaultRecorder/ratedvalue.DAT");    file>>G[0];    file>>G[1];    file>>G[2];    file>>G[3];    file>>G[4];    file>>G[5];    file.close();        N3 = (int) G[2];    QString rv0,rv2;    rv0 = QString ("%0").arg(G[0], 0, 'f', 0);    Gsettingvoltage_ratedvalue_lineEdit->setText(rv0);    rv2 = QString ("%0").arg(G[2], 0, 'f', 0);    Grotorcurrent_ratedvalue_lineEdit->setText(rv2);        Gsettingvoltage_ratedvalue_lineEdit->setEnabled(FALSE);    Grotorcurrent_ratedvalue_lineEdit->setEnabled(FALSE);    U01_lineEdit->setEnabled(FALSE);    U02_lineEdit->setEnabled(FALSE);    U03_lineEdit->setEnabled(FALSE);    U04_lineEdit->setEnabled(FALSE);    U05_lineEdit->setEnabled(FALSE);    U06_lineEdit->setEnabled(FALSE);    U07_lineEdit->setEnabled(FALSE);    U08_lineEdit->setEnabled(FALSE);    U09_lineEdit->setEnabled(FALSE);    descendstart_pushButton->setEnabled(FALSE);    printcurve_pushButton->setEnabled(FALSE);        fkz_iconView->clear();    (void) new QIconViewItem( fkz_iconView, "", Draw_coordinate());    fkz_iconView->setEnabled(FALSE);}QPixmap FKZ_Form::Draw_coordinate(){    int i,j;    QString str1,str2,strx[4],stry[4];    QPixmap pixmap( 350, 250 );    pixmap.fill( white );    QPainter painter;    painter.begin( &pixmap );    painter.setPen( black );    painter.drawLine(25, 230, 328, 230);    painter.drawLine(25, 230, 25, 22);    painter.setPen( gray );    for( i=0; i<10; i++){	painter.drawLine(25, 30+i*20, 325, 30+i*20);    }    for( j=1; j<=10; j++){	painter.drawLine(25+j*30, 230, 25+j*30, 30);    }    painter.setPen( magenta );    painter.drawLine(25, 230-(int)(200/k3), 325, 230-(int)(200/k3));    painter.setPen( blue );    painter.drawText(330, 235, "Ir", -1);    painter.drawText(20, 20, "U0", -1);    painter.drawText(20, 245, "0", -1);    str1 = QString ("%0").arg(G[0]*k3, 0, 'f', 0);    painter.drawText(0, 37, str1, -1);    str2 = QString ("%0").arg(G[2], 0, 'f', 0);    painter.drawText(315, 245, str2, -1);    for( i=1; i<=4; i++){	strx[i] = QString ("%0").arg(G[2]*i/5, 0, 'f', 0);	painter.drawText(20+(315-20)*i/5, 245, strx[i], -1);    }    for( j=1; j<=4; j++){	stry[j] = QString ("%0").arg(G[0]*k3*j/5, 0, 'f', 0);	painter.drawText(0, 235-(235-35)*j/5, stry[j], -1);    }    painter.end();    return pixmap;}void FKZ_Form::risestart(){    risestart_pushButton->setEnabled(FALSE);    (void) new QIconViewItem( fkz_iconView, "", Draw_risecurve());    descendstart_pushButton->setEnabled(TRUE);}QPixmap FKZ_Form::Draw_risecurve(){    QString date = QDate::currentDate().toString(Qt::ISODate).left(10);    QString time = QTime::currentTime().toString(Qt::TextDate).left(8);    QString hh, mm, ss, time2;    hh = time.left(2);    mm = time.mid(3,2);    ss = time.right(2);    time2 = hh + mm + ss;    fkzfile = date + " " + time2 + ".DAT";        fkz_iconView->clear();    QString Uab,Ubc,Uca,Irr;    QPixmap pixmap( 350, 250 );    pixmap.fill( white );    QPainter painter;    painter.begin( &pixmap );//绘制坐标;    int i, j;    QString str1,str2,strx[4],stry[4];    painter.setPen( black );    painter.drawLine(25, 230, 328, 230);    painter.drawLine(25, 230, 25, 22);    painter.setPen( gray );    for( i=0; i<10; i++){	painter.drawLine(25, 30+i*20, 325, 30+i*20);    }    for( j=1; j<=10; j++){	painter.drawLine(25+j*30, 230, 25+j*30, 30);    }    painter.setPen( magenta );    painter.drawLine(25, 230-(int)(200/k3), 325, 230-(int)(200/k3));    painter.setPen( blue );    painter.drawText(330, 235, "Ir", -1);    painter.drawText(20, 20, "U0", -1);    painter.drawText(20, 245, "0", -1);    str1 = QString ("%0").arg(G[0]*k3, 0, 'f', 0);    painter.drawText(0, 37, str1, -1);    str2 = QString ("%0").arg(G[2], 0, 'f', 0);    painter.drawText(315, 245, str2, -1);    for( i=1; i<=4; i++){	strx[i] = QString ("%0").arg(G[2]*i/5, 0, 'f', 0);	painter.drawText(20+(315-20)*i/5, 245, strx[i], -1);    }    for( j=1; j<=4; j++){	stry[j] = QString ("%0").arg(G[0]*k3*j/5, 0, 'f', 0);	painter.drawText(0, 235-(235-35)*j/5, stry[j], -1);    }//绘制上升曲线;    int t;    float k = G[0]*k3/G[2];    int U0,Ir;    X3[0] = 25;    RY3[0] = 230;    painter.setPen( red );    for( t=1; t<=N3; t++){	Ir = t;	U0= (int) ( k*Ir );		//假设上升曲线为: y=k*x;	X3[t] = 25 + (int) (Ir*300/G[2]);	RY3[t] = 230 - (int) (U0*200/G[0]/k3);	Uab = QString ("%0").arg(U0, 0, 'f', 0);	Uab_lCDNumber->display( Uab );	Ubc = QString ("%0").arg(U0, 0, 'f', 0);	Ubc_lCDNumber->display( Ubc );	Uca = QString ("%0").arg(U0, 0, 'f', 0);	Uca_lCDNumber->display( Uca );	Irr = QString ("%0").arg(Ir, 0, 'f', 0);	Ir_lCDNumber->display( Irr );	if( RY3[t]>=28 && X3[t]<=327 ){	    painter.drawLine(X3[t], RY3[t], X3[t-1], RY3[t-1]);	}else break;    }    painter.end();    return pixmap;}//用数字键盘输入稳态值;void FKZ_Form::Ir1input(){    QString strIr1;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr1 = datakeyboard_Form->returnNumber();    Ir1_lineEdit->setText( strIr1 );}void FKZ_Form::Ir2input(){    QString strIr2;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr2 = datakeyboard_Form->returnNumber();    Ir2_lineEdit->setText( strIr2 );}void FKZ_Form::Ir3input(){    QString strIr3;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr3 = datakeyboard_Form->returnNumber();    Ir3_lineEdit->setText( strIr3 );}void FKZ_Form::Ir4input(){    QString strIr4;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr4 = datakeyboard_Form->returnNumber();    Ir4_lineEdit->setText( strIr4 );}void FKZ_Form::Ir5input(){    QString strIr5;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr5 = datakeyboard_Form->returnNumber();    Ir5_lineEdit->setText( strIr5 );}void FKZ_Form::Ir6input(){    QString strIr6;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr6 = datakeyboard_Form->returnNumber();    Ir6_lineEdit->setText( strIr6 );}void FKZ_Form::Ir7input(){    QString strIr7;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr7 = datakeyboard_Form->returnNumber();    Ir7_lineEdit->setText( strIr7 );}void FKZ_Form::Ir8input(){    QString strIr8;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr8 = datakeyboard_Form->returnNumber();    Ir8_lineEdit->setText( strIr8 );}void FKZ_Form::Ir9input(){    QString strIr9;    DataKeyboard_Form*datakeyboard_Form = new DataKeyboard_Form(this,"数字键盘",FALSE);    datakeyboard_Form->exec();    strIr9 = datakeyboard_Form->returnNumber();    Ir9_lineEdit->setText( strIr9 );}//下降曲线开始void FKZ_Form::descendstart(){    descendstart_pushButton->setEnabled(FALSE);    (void) new QIconViewItem( fkz_iconView, "", Draw_descendcurve());    ExperimentEnd_Form*experimentend_Form = new ExperimentEnd_Form(this,"电气试验结束",FALSE);    experimentend_Form->exec();    printcurve_pushButton->setEnabled(TRUE);}QPixmap FKZ_Form::Draw_descendcurve(){    QDir::setCurrent("/root/FaultRecorder/experiment/FKZ/");    QFile file( fkzfile );    file.open( IO_WriteOnly );    QTextStream stream( &file );        int WIr[10], WU0[10];    QString str[10];		//读入稳态值;    QString strU[10];    str[1] = Ir1_lineEdit->text();    WIr[1] = atoi(str[1]);    str[2] = Ir2_lineEdit->text();    WIr[2] = atoi(str[2]);    str[3] = Ir3_lineEdit->text();    WIr[3] = atoi(str[3]);    str[4] = Ir4_lineEdit->text();    WIr[4] = atoi(str[4]);    str[5] = Ir5_lineEdit->text();    WIr[5] = atoi(str[5]);    str[6] = Ir6_lineEdit->text();    WIr[6] = atoi(str[6]);    str[7] = Ir7_lineEdit->text();    WIr[7] = atoi(str[7]);    str[8] = Ir8_lineEdit->text();    WIr[8] = atoi(str[8]);    str[9] = Ir9_lineEdit->text();    WIr[9] = atoi(str[9]);        Ir1_lineEdit->setEnabled(FALSE);    Ir2_lineEdit->setEnabled(FALSE);    Ir3_lineEdit->setEnabled(FALSE);    Ir4_lineEdit->setEnabled(FALSE);    Ir5_lineEdit->setEnabled(FALSE);    Ir6_lineEdit->setEnabled(FALSE);    Ir7_lineEdit->setEnabled(FALSE);    Ir8_lineEdit->setEnabled(FALSE);    Ir9_lineEdit->setEnabled(FALSE);        Ir1pushButton->setEnabled(FALSE);    Ir2pushButton->setEnabled(FALSE);    Ir3pushButton->setEnabled(FALSE);    Ir4pushButton->setEnabled(FALSE);    Ir5pushButton->setEnabled(FALSE);    Ir6pushButton->setEnabled(FALSE);    Ir7pushButton->setEnabled(FALSE);    Ir8pushButton->setEnabled(FALSE);    Ir9pushButton->setEnabled(FALSE);        fkz_iconView->clear();    QString Uab,Ubc,Uca,Irr;    QPixmap pixmap( 350, 250 );    pixmap.fill( white );    QPainter painter;    painter.begin( &pixmap );    //绘制坐标;    int i, j;    QString str1,str2,strx[4],stry[4];    painter.setPen( black );    painter.drawLine(25, 230, 328, 230);    painter.drawLine(25, 230, 25, 22);    painter.setPen( gray );    for( i=0; i<10; i++){	painter.drawLine(25, 30+i*20, 325, 30+i*20);    }    for( j=1; j<=10; j++){	painter.drawLine(25+j*30, 230, 25+j*30, 30);    }    painter.setPen( magenta );    painter.drawLine(25, 230-(int)(200/k3), 325, 230-(int)(200/k3));    painter.setPen( blue );    painter.drawText(330, 235, "Ir", -1);    painter.drawText(20, 20, "U0", -1);    painter.drawText(20, 245, "0", -1);    str1 = QString ("%0").arg(G[0]*k3, 0, 'f', 0);    painter.drawText(0, 37, str1, -1);    str2 = QString ("%0").arg(G[2], 0, 'f', 0);    painter.drawText(315, 245, str2, -1);    for( i=1; i<=4; i++){	strx[i] = QString ("%0").arg(G[2]*i/5, 0, 'f', 0);	painter.drawText(20+(315-20)*i/5, 245, strx[i], -1);    }    for( j=1; j<=4; j++){	stry[j] = QString ("%0").arg(G[0]*k3*j/5, 0, 'f', 0);	painter.drawText(0, 235-(235-35)*j/5, stry[j], -1);    }//绘制上升曲线;    int t;    float k = G[0]*k3/G[2];    int U0,Ir;    X3[0] = 25;    RY3[0] = 230;    painter.setPen( red );    for( t=1; t<=N3; t++){	Ir = t;	U0= (int) ( k*Ir );		//假设上升曲线为: y=k*x;	X3[t] = 25 + (int) (Ir*300/G[2]);	RY3[t] = 230 - (int) (U0*200/G[0]/k3);	if( RY3[t]>=28 && X3[t]<=327 ){	    painter.drawLine(X3[t], RY3[t], X3[t-1], RY3[t-1]);	}else break;    }//绘制下降曲线;    float b=G[2];    float c=G[0]*k3;    k=c/(b*b);    DY3[N3] = RY3[N3];    MY3[N3] = RY3[N3];    Ir = N3;    U0 = (int) ( -k*(Ir-b)*(Ir-b)+c );    stream<<Ir;    stream<<" ";    stream<<U0;    stream<<"\n";        for( i=1; i<=9; i++){	if( WIr[i] == Ir ) WU0[i] = U0;    }    for( t=N3-1; t>=0; t--){	Ir = t;	U0 = (int) ( -k*(Ir-b)*(Ir-b)+c );			//假设下降曲线为:y=-k*(x-b)*(x-b)+c;	DY3[t] = 230 - (int) (U0*200/G[0]/k3);	Uab = QString ("%0").arg(U0, 0, 'f', 0);	Uab_lCDNumber->display( Uab );	Ubc = QString ("%0").arg(U0, 0, 'f', 0);	Ubc_lCDNumber->display( Ubc );	Uca = QString ("%0").arg(U0, 0, 'f', 0);	Uca_lCDNumber->display( Uca );	Irr = QString ("%0").arg(Ir, 0, 'f', 0);	Ir_lCDNumber->display( Irr );	MY3[t] = ( RY3[t] + DY3[t] )/2;	if( DY3[t]<=230 && X3[t]>=25 ){	    stream<<Ir;	    stream<<" ";	    stream<<U0;	    stream<<"\n";	    painter.setPen( green );	    painter.drawLine(X3[t], MY3[t], X3[t+1], MY3[t+1]);	    painter.setPen( blue );	    painter.drawLine(X3[t], DY3[t], X3[t+1], DY3[t+1]);	    for( i=1; i<=9; i++){				if ( WIr[i] == Ir ) WU0[i] = U0;	    }	}else break;    }        strU[1] = QString ("%0").arg(WU0[1], 0, 'f', 0);		//显示稳态值结果;    U01_lineEdit->setText(strU[1]);    strU[2] = QString ("%0").arg(WU0[2], 0, 'f', 0);    U02_lineEdit->setText(strU[2]);    strU[3] = QString ("%0").arg(WU0[3], 0, 'f', 0);    U03_lineEdit->setText(strU[3]);    strU[4] = QString ("%0").arg(WU0[4], 0, 'f', 0);    U04_lineEdit->setText(strU[4]);    strU[5] = QString ("%0").arg(WU0[5], 0, 'f', 0);    U05_lineEdit->setText(strU[5]);    strU[6] = QString ("%0").arg(WU0[6], 0, 'f', 0);    U06_lineEdit->setText(strU[6]);    strU[7] = QString ("%0").arg(WU0[7], 0, 'f', 0);    U07_lineEdit->setText(strU[7]);    strU[8] = QString ("%0").arg(WU0[8], 0, 'f', 0);    U08_lineEdit->setText(strU[8]);    strU[9] = QString ("%0").arg(WU0[9], 0, 'f', 0);    U09_lineEdit->setText(strU[9]);        file.close();    painter.end();    return pixmap;}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -