gpt4 book ai didi

c++ - 如何使 QLineEdit 在 Windows 中不可编辑

转载 作者:IT老高 更新时间:2023-10-28 21:52:09 28 4
gpt4 key购买 nike

我正在使用 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);

关于c++ - 如何使 QLineEdit 在 Windows 中不可编辑,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23915700/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com