写一段代码使用C++的qt框架,假设有多个文本框当鼠标失焦时判断文本框内是否为空并提示
时间: 2024-05-05 19:20:19 浏览: 88
好的,这是一段使用 C++ 的 Qt 框架实现的代码:
```cpp
#include <QtWidgets>
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
QWidget mainWidget;
QVBoxLayout layout(&mainWidget);
QLineEdit lineEdit1;
QLineEdit lineEdit2;
layout.addWidget(&lineEdit1);
layout.addWidget(&lineEdit2);
QObject::connect(&lineEdit1, &QLineEdit::editingFinished, [&]() {
if (lineEdit1.text().isEmpty()) {
QMessageBox::warning(&mainWidget, "Warning", "Text field 1 is empty!");
}
});
QObject::connect(&lineEdit2, &QLineEdit::editingFinished, [&]() {
if (lineEdit2.text().isEmpty()) {
QMessageBox::warning(&mainWidget, "Warning", "Text field 2 is empty!");
}
});
mainWidget.show();
return app.exec();
}
```
在这个例子中,我们创建了一个 `QWidget`,然后在其中添加了两个文本框 `QLineEdit`,并将它们放置在一个 `QVBoxLayout` 布局中。我们还关联了每个文本框的 `editingFinished` 信号,这个信号在用户完成编辑并且该文本框失去焦点时会被触发。在信号的槽函数中,我们检查文本框的文本是否为空,如果是,则显示一个警告框。最后,我们显示主窗口并进入 Qt 应用程序的事件循环中。
阅读全文