Qt提供了一些常用的对话框类型,它们全部继承自QDialog类,并增加了自己的特色功能,比如获取颜色、显示特定信息等。对话框窗口是一个顶级窗口,主要用于短期任务和与用户的简短通信。
-
基本对话框
-
代码如下
2.1 颜色对话框
void MainWindow::clockSlot()
{
#if 0
//getColor(设置初始颜色、指定父窗口、设置对话框标题)
QColor color = QColorDialog::getColor(Qt::blue,this,tr("颜色对话框"));
#endif
//颜色对话框 对象
QColorDialog colorDialog (Qt::red,this);
colorDialog.setOption(QColorDialog::ShowAlphaChannel);//显示alpha选项
colorDialog.exec();//成为模态对话框(你必须理我)
QColor color = colorDialog.currentColor();//获取颜色
//颜色对话框应用:改变字体颜色
QPalette p = palette();//定义QPalette(调色板类)
p.setColor(QPalette::WindowText, QColor(color)); //调色板接收颜色
label->setPalette(p); //给labe绑定颜色
//颜色对话框应用:改变底色(背景色)
// QString style = QString("background-color: rgb(%1, %2, %3);")
// .arg(color.red()).arg(color.green()).arg(color.blue());
// label->setStyleSheet(style);
}
2.2文字对话框
//核心API: QFont QFontDialog::getFont()
//1.打开对话框获取选择的QFont值
bool ok;
QFont font = QFontDialog::getFont(&ok,this);
ui->pushButton_2->setFont(font);//2.swtFont()设置
//3.延申
#if 0
1.可以自行设置
QFont