I want to change the background color of a QPlainTextEdit, how do I do this?
+3
A:
Slightly confusingly they call it role rather than colour/color.
http://doc.trolltech.com/main-snapshot/qwidget.html#setBackgroundRole
hint - if you can't find a function for a particular control, click on show inherited members - most general settings are in qWidget which is the basis for eveything drawn on screen.
Martin Beckett
2009-10-06 23:38:36
Thanks but I still don't know how to do it exactly...
deuces
2009-10-06 23:51:41
Haven't used it but see this thread http://lists.trolltech.com/qt-interest/2006-07/thread00174-0.html
Martin Beckett
2009-10-07 00:12:13
A:
In order to modify the background, you need to modify the palette of your QPlainTextEdit and to set background visible:
myPlainTextEdit->setPalette(QPalette(/*Select the constructor you need*/));
myPlainTextEdit->setBackgroundVisible(true);
Patrice Bernassola
2009-10-07 08:54:39
+2
A:
If QPlainTextEdit supports style sheets, you could do it like this:
myPlainTextEdit->setStyleSheet("background-color: yellow");
or
qApp->setStyleSheet("QPlainTextEdit {background-color: yellow}");
Sam Dutton
2009-10-07 11:07:37
A:
Modify the palette of your plain text edit. Sample program:
#include <QApplication>
#include <QPlainTextEdit>
int main(int argc, char* argv[])
{
QApplication app(argc, argv);
QPlainTextEdit edit;
QPalette p = edit.palette();
p.setColor(QPalette::Active, QPalette::Base, Qt::red);
p.setColor(QPalette::Inactive, QPalette::Base, Qt::red);
edit.setPalette(p);
edit.show();
return app.exec();
}
Substitute whatever color you want, of course.
Bill
2009-10-07 14:58:41