首页| 论坛| 消息

标题:【转载】修罗王1981 problem:两程序间的通讯
作者:running
日期:2005-11-25 16:32
内容:

我想实现两程序间的通讯,比如form1.h,form1.cpp,main.cpp是主程序,我想调用form2.h,form2.cpp,那么我如何作?特别是我想form2有返回值,比如Form1中有个按钮,点一下出来Form2,Form2中也有一个按钮,点一下Form2退出,同时向Form1传一个返回值(比如int,or string,or 地址).
请问能否指点一下!举个例子最好!
先谢谢了!


#1 Re:修罗王1981 [running 11-25 16:40]
class VarsWindow:public QDialog
{
Q_OBJECT
public:
VarsWindow();
private slots:
void SlotGetVarValue();
private:
QLabel *varNameLabel;
QLabel *otherFLabel;
QLabel *otherSLabel;
QComboBox *varNameEdit;
QLineEdit *inputEdit;
QLineEdit *otherFEdit;
QLineEdit *otherSEdit;
QPushButton *varButton;
};
void VarsWindow::SlotGetVarValue()
{
Number=varNameEdit->currentItem();
Name=varNameEdit->currentText();
}
VarsWindow::VarsWindow():QDialog(0,0,TRUE)
{
setCaption("Properties");
varNameLabel=new QLabel(this);
varNameLabel->setText("varName:");
varNameLabel->setGeometry(5,5,50,10);
varNameLabel->setFixedHeight(varNameLabel->sizeHint().height());
varNameLabel->setAlignment(AlignCenter);

varNameEdit=new QComboBox(this);
varNameEdit->setGeometry(58,5,80,20);
varNameEdit->setPalette(white);

if (Type==1 or Type==2 or Type==5)
{
varNameEdit->insertItem("X0");
......
}

connect(varNameEdit, SIGNAL( activated( int ) ), this, SLOT( SlotGetVarValue()));

QPushButton *varButton=new QPushButton(this);
varButton->setGeometry(5,80,138,25);
varButton->setText("OK");
connect( varButton, SIGNAL(clicked ()), this, SLOT(close ()));
}
MyMainWindow::MyMainWindow()
{
if(Button)
{
VarsWindow vars;
vars.exec();
BufRung.Element.VarName=Name;
BufRung.Element.VarNum=Number;
}
}
#2 [修罗王1981 11-26 10:09]
哈哈,感谢楼主!

回复 发表
主题 版块