您的位置:首页 > 编程语言 > Qt开发

Qt一些小技巧(一)

2014-02-24 16:38 218 查看
部分代码源自互联网

1.带有菜单项的ToolButton -----------QToolButton

代码如下:

    //添加工具栏
QToolBar *pToolBar = new QToolBar;

QToolButton *pMenuBtn = new QToolButton;
pMenuBtn->setText(tr("Menu"));

QMenu *pMenu = new QMenu;
pMenu->addAction(tr("Qt"));
pMenu->addAction(tr("Linux"));
pMenu->addAction(tr("FreeOS"));

pMenuBtn->setMenu(pMenu);
connect(pMenuBtn, SIGNAL(clicked()), pMenuBtn, SLOT(showMenu()));

pToolBar->addWidget(pMenuBtn);
this->addToolBar(pToolBar);


2.在类MainWindow中的构造函数中我们添加如下一句代码:

                  //设置窗口透明效果

                  this->setWindowOpacity(0.8);

3.Qt标准对话框之QMessageBox:
QMessageBox::information(NULL, "Title", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
QMessageBox::critical(NULL, "critical", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
QMessageBox::warning(NULL, "warning", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
QMessageBox::question(NULL, "question", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
QMessageBox::about(NULL, "About", "About this application");
QMessageBox message(QMessageBox::NoIcon, "Title", "Content with icon.");
message.setIconPixmap(QPixmap("icon.png"));
message.exec();


我们使用QMessageBox类的时候有两种方式,一是使用static函数,另外是使用构造函数。

首先来说一下static函数的方式。注意,static函数都是要返回一个StandardButton,我们就可以通过判断这个返回值来对用户的操作做出相应。

QMessageBox::StandardButton rb = QMessageBox::question(NULL, "Show Qt", "Do you want to show Qt dialog?", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
if(rb == QMessageBox::Yes)
{
QMessageBox::aboutQt(NULL, "About Qt");
}

如果要使用构造函数的方式,那么我们就要自己运行判断一下啦:
QMessageBox message(QMessageBox::NoIcon, "Show Qt", "Do you want to show Qt dialog?", QMessageBox::Yes | QMessageBox::No, NULL);
if(message.exec() == QMessageBox::Yes)
{
QMessageBox::aboutQt(NULL, "About Qt");
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: