用qt 如何弹出小窗口代码实现
时间: 2023-06-04 16:05:24 浏览: 202
以下是用 Qt 弹出小窗口的代码实现示例:
``` c++
#include <QApplication>
#include <QMessageBox>
int main(int argc, char *argv[]) {
QApplication app(argc, argv);
QMessageBox::information(NULL, "Title", "Content", QMessageBox::Yes | QMessageBox::No, QMessageBox::Yes);
return app.exec();
}
```
以上代码会在程序运行时弹出一个包含标题和内容的小窗口,并且有 “Yes” 和 “No” 两个按键。你可以根据实际需要进行修改。
相关问题
C++Qt实现点击button,弹出子窗口
要实现点击按钮弹出子窗口,可以按照以下步骤:
1. 在Qt设计师中创建一个主窗口,并在主窗口上添加一个按钮。
2. 双击按钮,将会自动创建一个槽函数。
3. 在槽函数中,创建一个子窗口对象,并设置子窗口的属性。
4. 调用子窗口的 show() 函数,以显示子窗口。
下面是示例代码:
```cpp
//主窗口上的按钮被点击时,弹出子窗口
void MainWindow::on_btnOpen_clicked()
{
//创建子窗口对象
QDialog *dlg = new QDialog(this);
dlg->setWindowTitle("子窗口");
//设置子窗口的大小和位置
dlg->resize(400, 300);
dlg->move(300, 200);
//显示子窗口
dlg->exec();
}
```
在这个示例中,我们在主窗口上创建了一个名为 btnOpen 的按钮,并在按钮的双击事件中创建了一个 QDialog 对象,设置了子窗口的标题、大小和位置,并最终调用了 exec() 函数以显示子窗口。
当然,你也可以通过其他方式来创建子窗口,并设置子窗口的属性,这只是其中的一种方法。
C++Qt实现设置弹出子窗口的中央窗口
在C++ Qt中,可以使用`QDialog`类实现弹出子窗口,然后使用`setGeometry`函数将其设置为其父窗口(中央窗口)的中央位置。下面是一个示例代码:
```cpp
#include <QApplication>
#include <QDialog>
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
QDialog dialog;
dialog.setWindowTitle("My Dialog");
dialog.resize(300, 200);
// 设置为中央窗口
dialog.setGeometry(
QStyle::alignedRect(
Qt::LeftToRight,
Qt::AlignCenter,
dialog.size(),
qApp->desktop()->availableGeometry()
)
);
dialog.show();
return a.exec();
}
```
在上面的代码中,`QDialog`类表示弹出子窗口。`setWindowTitle`函数设置窗口标题,`resize`函数设置窗口大小。`setGeometry`函数将窗口设置为其父窗口(中央窗口)的中央位置。`QStyle::alignedRect`函数计算对齐的矩形位置,`Qt::AlignCenter`表示将矩形居中对齐。`qApp->desktop()->availableGeometry()`返回可用的桌面区域。最后,调用`show`函数显示窗口并启动应用程序事件循环。