tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
7
ZUGRIFFE
1244
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    MaPa2701 MaPa2701 ist offline Mitglied
    Registriert seit
    Aug 2005
    Beiträge
    13
    Hallo Leute,

    wie kann ich in einer ListBox farbige Einträge erzeugen?

    Möchte bestimmte Einträge in einer anderen Farbe machen, aber wie?

    Habe schon gegoogelt aber nichts gefunden.

    Bitte um Eure Hilfe!!

    Gruß
    Marcus
     

  2. #2
    Avatar von MBDealer
    MBDealer MBDealer ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Ort
    Borken-Weseke
    Beiträge
    99
    Hallo,

    ich weis ja nicht was für eine Suchmaschine du gebrauchst aber Google hat mir gleich diesen Link gesteckt:

    http://www.bytesandmore.de/rad/index...pp/sc02002.php
     
    MfG

    Rafael (MBDealer)

    | suricate-develop.de | mbdealer.de |

  3. #3
    MaPa2701 MaPa2701 ist offline Mitglied
    Registriert seit
    Aug 2005
    Beiträge
    13
    Diese Lösung habe ich auch schon gefunden, nur ich weiss nicht wie ich den Quellcode anwenden soll, hab schon einiges ausprobiert, bekomm es aber einfach nicht hin, die Farbe ändert sich bei mir immer fest (also zu einer bestimmten Zeile) und nicht wenn ich es will.

    kannst du mir den code erklären

    will in die liste ein paar einträge erzeugen (schwarz)
    bei bestimmten einträge (position ändert sich immer) sollen die Einträge rot sein

    Danke im vorraus.

    gruß marcus
     

  4. #4
    Avatar von MBDealer
    MBDealer MBDealer ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Ort
    Borken-Weseke
    Beiträge
    99
    Hallo,

    gib mal ein Beispiel wann welche Farbe benutzt werden soll.
     
    MfG

    Rafael (MBDealer)

    | suricate-develop.de | mbdealer.de |

  5. #5
    MaPa2701 MaPa2701 ist offline Mitglied
    Registriert seit
    Aug 2005
    Beiträge
    13
    also ich lese Daten aus einer Datei aus, wenn am im Text ein * ist, soll der Text ROT sein und wenn nicht dann SCHWARZ.

    Der Code funktioniert, nur die blöde Farbänderung nicht

    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    
    do
                           {            
                fp.getline(buffer,nCounts,(char)'\n');
                length = strlen(buffer);
                if (length >=1)
                    {
                    pch = strstr (buffer,suche);
                    if (pch != NULL)
                                           {
                                           // Hier soll der TEXT ROT sein 
                                           Form1->ListBox1->Items->Add(buffer);
                        }
                                    else
                                            {
                                           // hier soll der Text schwarz sein
                                           ListBox1->Items->Add(buffer);
                                            }
     
                    if (buffer[(length-1)] == '\r')
                        {
                        buffer[(length-1)]='\0';
                        }
                    }
                else
                    {
                    ENDE = 0;
                    }
                }while (ENDE);
                            ComboBox2->Text = "Ereitertes anzeigen";
                            fp.close();


    Gruß
    Marcus
    Geändert von MaPa2701 (24.08.05 um 15:57 Uhr)
     

  6. #6
    Avatar von MBDealer
    MBDealer MBDealer ist offline Mitglied Silber
    Registriert seit
    Jan 2005
    Ort
    Borken-Weseke
    Beiträge
    99
    Hallo,

    also du musst den Style von der ListBox auf "lbOwerDrawVariable" setzen sonst wird es nicht Farbig wenn du in dem OnDrawItem-Ereignis die Farbe der Schriftart änderst und da kannste dann auch die Überprüfung einbauen die nach dem * Zeichen sucht.
     
    MfG

    Rafael (MBDealer)

    | suricate-develop.de | mbdealer.de |

  7. #7
    MaPa2701 MaPa2701 ist offline Mitglied
    Registriert seit
    Aug 2005
    Beiträge
    13
    gibt es keine Möglichkeit die Farbe ausserhalb des OnDrawItem-Ereignis zu ändern, weil ich mit vielen bei meinen vielen anderen Funktionen die Farbe auch noch ändern möchte.

    mir wäre es am liebsten wenn es syntax-mäßig so gehen würde:

    ListBox1->Items->ColorText = clRed;
    ListBox1->Items->Add("TEST");

    wenn ich beim nächsten Eintrag wieder eine andere Farbe haben möchte, dann:

    ListBox1->Items->ColorText = clBlue;
    ListBox1->Items->Add("TEST");

    oder irgend eine andere Möglichkeit, würde mich auch zufriedengeben, wenn man über das Add die Farben ändern könnte, also ListBox1->Items->Add("Test", clBlue);

    Bin halt kein Profi HAst du irgendeine Idee?

    Gruß
    Marcus
     

  8. #8
    MaPa2701 MaPa2701 ist offline Mitglied
    Registriert seit
    Aug 2005
    Beiträge
    13
    Also ich habs jetzt auf jedenfall hinbekommen, Danke erstmal, aber würde die Farbe gerne anderst ändern und zwar so dass dies ausserhalb des OnDrawItem-Ereignis passiert.

    Gruß
    Marcus
     

Ähnliche Themen

  1. [C#] farbige labels?
    Von yellowspam im Forum .NET Web und Kommunikation
    Antworten: 2
    Letzter Beitrag: 17.08.07, 10:13
  2. Farbige Adressleiste
    Von glader im Forum HTML & XHTML
    Antworten: 1
    Letzter Beitrag: 09.05.06, 08:51
  3. MFC - Farbige StaticText?
    Von Nachtschwalbe im Forum VisualStudio & MFC
    Antworten: 8
    Letzter Beitrag: 07.12.05, 11:33
  4. VB6: Unterschiedlich farbige Zeilen in ListBox?
    Von Tensi im Forum Visual Basic 6.0
    Antworten: 5
    Letzter Beitrag: 19.09.04, 00:27
  5. Farbige Formularfelder
    Von Maximus im Forum HTML-Editoren
    Antworten: 1
    Letzter Beitrag: 02.06.01, 00:36