QT程序 ,说一下各句的含义QPalette palette=distextedit->palette();const
1个回答

这是一段设置 distextedit 颜色方案(也就是显示的颜色)的程序段

QPalette palette=distextedit->palette();

// 创建一个调色板对象,该对象与distextedit现有配色方案一致

//(因为程序只改变 Base 的颜色,而其它颜色不变)

const QColor&color=QColorDialog::getColor(palette.color(QPalette::Base),this);

// 利用颜色对话框让用户选择颜色,并存储于color中

if (color.isValid())

// 检测color是否有效(用户可能选择了对话框中的取消按钮)

{

palette.setColor(QPalette::Base,color);

// 设置调试板中的Base颜色为用户选择的那个颜色color

distextedit->setPalette(palette);

// 设置distextedit的调色板为palette,也就是Base的颜色改成了color,

}