StringGrid Zelle und Feste Zelle gleichzeitig farbig?



  • N'Abend

    hab schon die Suche bemüht, aber nichts passendes gefunden.
    Vielleicht kann mir ja jemand helfen.

    Habe ein StringGrid, das aus einer Festen Spalte und mehreren anderen Spalten besteht in denen die Zellen (Zelleninhalte) auf ihre richtigkeit überprüft werden. Ist der Inhalt fehlerhaft, so wird die entsprechende Zelle Rot dargestellt.

    Nun würde ich gerne noch die entsprechende Zelle der Festen Spalte Rot darstellen, damit man auf den ersten Blick sieht, dass in dieser Zeile ein Fehler existiert, ohne das StringGrid Komplett nach rechts durchscrollen zu müssen.

    !! Ich will aber nicht die Komplette Zeile farbig darstellen !!

    Ich hoffe ich habe mich Verständlich ausgedrückt 🙂

    Vielen Dank schon mal im Voraus !

    MfG
    gregro78



  • Und was genau ist dein Problem? Was hast du bis jetzt versucht?



  • Das Problem ist, dass ich es nicht hinbekomme z.B. die erste Zelle der vierten Spalte und gleichzeitig die dazugehörige erste Zelle der Festen Spalte farbig darzustellen. Es wird dann immer die Komplette Feste Spalte Rot anstatt nur dieser einen Zelle.



  • reagiere auf OnDrawCell

    typedef void __fastcall (__closure *TDrawCellEvent)(System::TObject* Sender, long ACol, long ARow, TRect Rect, TGridDrawState State);
    __property TDrawCellEvent OnDrawCell = {read=FOnDrawCell, write=FOnDrawCell};
    

    Frag mit Cells(ACol,ARow) den Inahlt ab, prüfe ihn und zeichne entsprechend in den Rect rein.



  • gregro78 schrieb:

    Es wird dann immer die Komplette Feste Spalte Rot anstatt nur dieser einen Zelle.

    Ich denke, du färbst bereits eine einzelne Zelle ein? Dann solltest du doch wissen, wie das im Prinzip funktioniert.
    Ansonsten zeig halt, was du versucht hast, also den Code, der die ganze Spalte einfärbt.



  • die Zellen (Zelleninhalte) auf ihre richtigkeit überprüft werden. Ist der Inhalt fehlerhaft, so wird die entsprechende Zelle Rot dargestellt.

    Genau das versuche ich auch gerade. Kannst du mir sagen, wie du das gemacht hast?
    Mit der Geschichte aus den FAQs bekomme ich's irgendwie nicht hin...

    TIA
    CharlyDontKnow


  • Mod

    Hallo

    zeig uns dochmal deinen QuellCode
    (dann koennen wir dir auch zeigen wo dein Fehler ist)

    MfG
    Klaus



  • Ja, würde ich gerne machen, aber leider komme ich auf nichts Konkretes.
    Ich denke mal, ich muss mir alle fehlerhaften Zellen in einem Array merken und dann beim OnDrawCell() anfragen.

    Und das OnDrawCell() komme ich nicht rum, oder?


Anmelden zum Antworten