Anzeige:
Ergebnis 1 bis 7 von 7

Thema: farbe im listview

  1. #1
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749

    farbe im listview

    Hallo ich würde gerne items in einem listview die einfach nur QStrings sind momentan in Farbe darstellen lassen ..also z.B die Strings blau machen oder auch rot oder so...wie schaffe ich das auf die schnelle ?? Danke

  2. #2
    Registrierter Benutzer
    Registriert seit
    17.05.2003
    Beiträge
    226
    Hallo Mat,

    ich bin nicht sicher, weil ich es noch nicht ausprobiert habe, aber versuche es mal mit "void QListViewItem:aintCell ( QPainter * p, const QColorGroup & cg, int column, int width, int align )". Ich denke, du musst dazu QListViewItem ableiten und paintCell überschreiben. Dort unterscheidest du, welche Farbe benutzt werden soll. Deine eigene Klasse (nenn sie z.B. ListViewItem) benutzt du dann statt QListViewItem.

    Schöne Grüße,
    Kirstin

  3. #3
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Korrekter Ansatz.

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  4. #4
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749
    hmm hui....ich denke das übersteigt meine Kenntnisse noch....

  5. #5
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    Das hört sich kompizierter an, als es ist

    Code:
    class MyListViewItem : public QListViewItem
    {
    public:
        virtual void  paintCell ( QPainter * p, const QColorGroup & cg, int column, int width, int align );
    };
    
    void MyListViewItem:: paintCell ( QPainter * p, const QColorGroup & cg, int column, int width, int align )
    {
        if (isSelected()) // wenn selektiert, normales Verhalten
            QListViewItem::paintCell(p, cg. column, width, align);
        else
        {
            QColorGroup cgNew = cg;
            cgNew.setColor(QColorGroup::Text, Qt::blue);
    
            QListViewItem::paintCell(p, cgNew. column, width, align);
        }
    }
    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

  6. #6
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749
    hmm sobald ich meinem header eingebe:

    Code:
    class MyListViewItem : public QListViewItem
    {
    public:
    
    };
    sagt er mir QListViewItem has Incomplete Type...
    Was mache ich falsch?

  7. #7
    Administrator Avatar von anda_skoa
    Registriert seit
    17.11.2001
    Ort
    Graz, Österreich
    Beiträge
    5.477
    #include <qlistview.h>

    Ciao,
    _
    Qt/KDE Entwickler
    Debian Benutzer

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •