这是qt聊天窗口(kǒu) 示例下载,测试代码,未修改,未注(zhù)释(shì),很凌乱(luàn)乱(luàn),嫌(xián)弃的就不要找我要(yào)了。免得又(yòu)说好乱的代码,根(gēn)本看不了。看不懂的可以(yǐ)问我!
QWidget的(de)构造(zào)函数有2个(gè)参数
QWidget *parent=0和Qt::WindowFlags f=0
parent指的是(shì)父窗口控件,默认是0,表示没(méi)有父窗口;
而f参数(shù)是Qt::WindowFlags类型的,是一个枚(méi)举类型,分为窗口类(lèi)型(xíng)(WindowType)和窗口标(biāo)志(WindowFlags)。前者定义窗口的(de)类型,如f=0表明使用了Qt::widget一项,这是QWidget的默(mò)认类型,这种类型的部件如果没有父窗(chuāng)口,那(nà)么它就是子部(bù)件,否则就是独立窗口。
qt聊(liáo)天窗口 示例要(yào)想使得一个(gè)对话框成为(wéi)模态(tài)对话框,只(zhī)需要调(diào)用它的exec()函数(shù),而要使其(qí)成为非模(mó)态对话框,可以使(shǐ)用(yòng)new操作来创建,然(rán)后使用show()函(hán)数来显示(shì)。其实(shí)使用show()函数也可以建立(lì)模态对话框,只需要在其(qí)前(qián)面加入(rù)setModal()函数即(jí)可。
QDialog *dialog=new QDialog(this);
dialog->setModal(true);
dialog->show();
与exec()函(hán)数不同(tóng)的是:父窗口MyWidget对象窗口也显示(shì)出来(lái)了。因为调用完(wán)show()函数后(hòu)会(huì)立即把控制(zhì)权交给调用(yòng)者,那么程序会继续(xù)往下执(zhí)行。而调用exec()函数却(què)不同,只有当对话(huà)框被关(guān)闭时才会返回。
