欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 会展 > 9_25_对话框

9_25_对话框

2025/7/15 17:55:06 来源:https://blog.csdn.net/m0_53697204/article/details/142533095  浏览:    关键词:9_25_对话框

QColorDialog(调色板对话框)

void MainWindow::on_pushButton_clicked()
{
//    //创建一个调色板对话框
//    QColorDialog* dialog = new QColorDialog(this);
//    //设置调色板对话框的初始值,不调整默认是白色
//	  dialog->setCurrentColor(QColor(100,200,150));
//    dialog->getColor(QColor(0,255,0));
//    dialog->setWindowTitle("这是一个调色板");
//    //运行对话框
//    dialog->exec();//    //删除对话框
//    delete dialog;//使用getcolor方法来获取用户选择的颜色QColor color = QColorDialog::getColor(QColor(0,255,255),this, "选择颜色");qDebug()<< color;QString style = "background-color:rgb(" + QString::number(color.red()) + "," + QString::number(color.green()) + "," + QString::number(color.blue()) +");";this->setStyleSheet(style);
}

QFileDialog(文件对话框)

void MainWindow::on_pushButton_clicked()
{QString filePath = QFileDialog::getOpenFileName(this);qDebug() << filePath;
}void MainWindow::on_pushButton_2_clicked()
{QString filePath = QFileDialog::getSaveFileName(this);qDebug() << filePath;
}

QInputDialog(输入对话框)

可以让用户输入一个具体的数据,可以是整数,浮点数,字符串的形式。

void MainWindow::on_pushButton_clicked()
{int i = QInputDialog::getInt(this, "输入整数","请输入一个整数",1);qDebug()<< i;	
}void MainWindow::on_pushButton_2_clicked()
{double j = QInputDialog::getDouble(this, "输入浮点数","输入一个浮点数");qDebug() << j;
}

输入条目的时候,需要一个 QStringList 格式的参数。用 push_back的方法往参数里添加数据

void MainWindow::on_pushButton_3_clicked()
{QStringList items;items.push_back("111");items.push_back("222");items.push_back("333");items.push_back("444");QString string = QInputDialog::getItem(this, "输入条目", "请输入一个条目", items);qDebug()<< string;
}

在这里插入图片描述
PS:尽量用用静态函数的方式创建对话框。

• 小结

	1.菜单栏(QMenuBar)=>菜单(QMenu)=>菜单项(QAction)2.工具栏(QToolBar)=>菜单项(QAction)3.子窗口(QDockWidget)=>QWidget =>放置其他的控件4.状态栏(QStatusBar)=> QWidget(永久信息,临时信息,进度条)5.对话框(QDialog)=>自己手动继承的方式,对QDialog进行扩展,代码自定义和图形化自定义对话框还有一些系统自带的对话框QMessageBox、QFileDialog、QColorDialog、QFontDialog、QInoputDialog

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词