[qt] font im qlistview



  • qlistview hat die methoden font() und setFont()
    damit wird aber die schriftart aller listenelemente gesetzt

    wie kann ich die schriftart einzelner listenelemente ändern um sie besonders hervorzuheben



  • dafür solltest du besser QListBox benutzen, dort kannst du selbst definierte objekte auflisten lassen, also nicht nur statischen text. in diesem fall solltest du QLabels reinmachen und für die entsprechenden labels die gewünschte schriftart setzen...



  • hat die listbox auch ne treeview option?
    eigentlich will ich nur manche elemente bold hervorheben



  • nein, trees kannst du mit QListBox nicht machen..

    Mein Vorschlag wäre jetzt, dass du eine neue Klasse schreibst, die speziell für text-objekte da ist. sie vererbt QListViewItem und die draw-methode (paintEvent) wird reimplementiert um den text zu zeichnen... dazu sollte es noch eine öffentliche funktion geben setBold (bool) mit der man ein internes flag setzt, ob der text normal oder halt fett ist...



  • die simpelsten sachen können ja sooo schön kompliziert werden
    mfc lässt grüßen



  • na wenn du kein tree bräuchtest, wäre das ganze viel einfacher 🙂

    du könntest natürlich auch QPixmap's erzeugen und dort den text in dem entsprechenden modus (normal/bold) mit einem QPainter draufzeichnen und dann die pixmap mittels QListViewItem::setPixmap (int column, const QPixmap & pm) in den listviewitem setzen :p


Anmelden zum Antworten