RT,比如,當子窗口關閉時,重新打開主窗口。這個是如何通信的,希望能給上例子。
我知道是用信號和槽,可是兩個窗口(類)之間的信號和槽我還不太會。網上也沒找到具體的例子。希望大嬸們能給個好點的直觀的例子。
主窗體類為A,子窗體類為B,在A中實例化B,其對象為b,關閉b,但不要釋放b,調用b的public方法返回數據。仔細理解。
void A::buttonClick()
{
B b;
b.exec();
b.getData();
}
或
void A::buttonClick()
{
B *b = new B();
b->exec();
b->getData();
delete b;
主窗體類為A,子窗體類為B。類B中聲明一個信號signalB,類A中聲明一個槽函數slotA。
在A中實例化B,其對象為b, 在B類中需要的地方(如單擊按鈕)產生信號。
void B::buttonClick()
{
emit signalB;
}
void A::buttonClick()
{
B b;
connect(&b, SIGNAL(signalB), this, SLOT(slotA));
b.exec();
b.getData();
}
void A::slotA()
{
qDebug("收到了B中的信號,可以做相應處理");
}