我正在使用 Qt 5.2,我想做一个QLineEdit
不可编辑。问题是,它看起来并不像这样。使用时setReadOnly(true)
它保持白色背景,看起来仍然可以编辑。
如果我禁用它,它就会变成灰色,文本也会变成浅灰色。问题是,在禁用状态下,无法从中复制文本。
那么我怎样才能制作一个QLineEdit
正确地不可编辑并使其看起来像它。在 Windows 中,此类控件通常是灰色的,但文本保持黑色。当然,我可以手动设置样式,但这意味着它是硬编码的,并且在其他平台上可能看起来错误。
将行编辑设为只读后,您可以将背景和文本颜色设置为您喜欢的任何颜色:
ui->lineEdit->setReadOnly(true);
QPalette *palette = new QPalette();
palette->setColor(QPalette::Base,Qt::gray);
palette->setColor(QPalette::Text,Qt::darkGray);
ui->lineEdit->setPalette(*palette);
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)