所谓标准对话框,是 Qt 内置的一系列对话框,用于简化开发。
较为常用的内置对话框有:QColorDialog(选择颜色),QFileDialog(选择文件或者目录),QFontDialog(选择字体),QInputDialog(允许用户输入一个值,并将其值返回),QMessageBox(模态对话框),QPrintDialog(打印机配置)。
前一篇blog里实现了文本文件的读取和保存,能够实现了文本编辑器的部分功能,在txt文本编辑器里还能够设置选中文本的颜色以及字体,这里我们调用的是windows自带的QColorDialog和QFontDialog。
首先在mainwindow.h里声明字体设置和颜色设置两个槽函数
private slots:
void setColorSlots();
void selectAllSlots();
然后在cpp文件中进行定义
void MainWindow::setFontSlots(){
bool ok;
QFont font=QFontDialog::getFont(&ok,this);
if(ok){
ui->textEdit->setFont(font);
}
else{
QMessageBox::information(this,"错误信息","无法获取当前字体");
return;
}
}
void MainWindow::setColorSlots(){
QColor color=QColorDialog::getColor(Qt::green,this);//打开颜色设置框默认的是绿色
if(color.isValid()){
ui->textEdit->setTextColor(color);
}
else{
QMessageBox::information(this,"错误信息","无法获取颜色");
return;
}
}