Zum neuen Informatik-Forum >>
 FAQFAQ   SuchenSuchen   MitgliederlisteMitgliederliste   BenutzergruppenBenutzergruppen   RegistrierenRegistrieren   ProfilProfil   Einloggen, um private Nachrichten zu lesenEinloggen, um private Nachrichten zu lesen   LoginLogin 

DrawGrid <-> StringGrid

 
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Delphi/Kylix
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
sunshine270882



Anmeldungsdatum: 23.02.2005
Beiträge: 3
Wohnort: bei Hamburg

BeitragVerfasst am: 14. Feb 2006 00:48    Titel: DrawGrid <-> StringGrid Antworten mit Zitat

Hallo an alle!

Ich habe gerade ein Entscheidungsproblem:
Und zwar möchte ich ein Grid benutzen, um einen Kalender darzustellen, in dessen Zellen ich Strings mit verschiedenen Farben reinschreiben kann (String farbig schreiben) - auch mit Zeilenumbrüchen - und ich möchte z.B. die Wochenenden grau unterlegen (Zelle farbig füllen).
Dabei habe ich gerade das Problem, dass ich mich für keine der beiden Komponenten entscheiden kann:
Das StringGrid ermöglicht mir ja einen indizierten Zugriff auf die Zellen, den ich gerne nutzen möchte; da kann ich einen String farbig reinschreiben, es ist mir aber ein Rätsel, wie ich dann einen Zeilenumbruch realisere und wie der nächste String dann in einer anderen Farbe geschrieben werden soll grübelnd
Davon mal abgesehen weiß ich auch nicht, wie ich Zellen farbig markieren kann unglücklich
Das DrawGrid soll ja für alles, was mit zeichen/Farben usw zu tun hat, besser sein als das StringGrid; aber da habe ich ja keinen indizierten Zugriff auf die Zellen, weiß also nicht, wie ich da dann meine Daten reinschreiben soll....

Klar ist mir, dass ich für beide Fälle das OnDrawCell-Ereignis nutzen muss, aber wie...

Zur Info: Meine Daten (Datum, Uhrzeit, Terminnotiz) befinden sich zeitlich sortiert in einer doppelt verketteten Liste. Da es ein Mehrbenutzersystem ist, hat jeder Benutzer seine eigene Farbe und einen Verweis auf seine Termin-Liste; deswegen sollen die Termine in der Benutzerfarbe dargestellt werden.

Wenn jetzt also jemand eine super Idee hat und mir bei meiner Entscheidung für oder gegen eine der Komponenten helfen kann...
... immer her mit den Vorschlägen Gott

Freu mich auf jeden Fall smile

Liebe Grüße, Sunny
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
sunshine270882



Anmeldungsdatum: 23.02.2005
Beiträge: 3
Wohnort: bei Hamburg

BeitragVerfasst am: 22. Feb 2006 22:34    Titel: Endlich entschieden! Antworten mit Zitat

Hab mich doch jetzt tatsächlich entschieden!
Mein Problem lag gar nicht direkt bei den beiden Komponenten und deren Vor- und Nachteilen.
Das eigentliche Problem war, dass ich meine Daten aus meiner Liste ausgelesen und beim Stringgrid mit indizierten Zugriff in die Zellen geschrieben habe, die Zelleninhalte dann wieder ausgelesen habe und anschließend versucht habe, die Strings farbig zu malen, was nihct umsetzbar ist, weil mir die Farbinformation beim ersten Schreiben verloren gegangen ist.
Deshalb arbeite ich jetzt ausschließlich mit dem OnDrawCell-Ereignis, was mir ja die Koordinaten für die gerade zu zeichnende Zelle liefert, lese meine Daten aus und schreibe diese dann farbig in die Zelle, markiere auch den Hintergrund farbig bei den Zellen, wo es sein muss smile
Der Zeilenumbruch hat nach vielem Ausprobieren jetzt auch endlich geklappt Big Laugh

Das einzige, was jetzt noch nicht geht, ist das Anpassen der Zellenhöhe unglücklich
Bei dem, was ich jetzt mache, flackert die Anzeige sehr stark und die CPU ist zu 100% ausgelastet.
Also habe ich da wohl eine Endlosschleife produziert, die ich aber nicht lokalisieren kann...
Da scheint jedenfalls beim Repaint des Grids was schief zu laufen unglücklich

Vielleicht hat ja jemand einen Tipp für mich?

Würde mich wirklich freuen!

LG Sunny
Nach oben
Benutzer-Profile anzeigen Private Nachricht senden Yahoo Messenger MSN Messenger
Felix
Gast





BeitragVerfasst am: 15. März 2006 15:52    Titel: Antworten mit Zitat

Hallo,
Also die Spaltenbreite geht mit; Form1->StringGrid1->ColWidths[index]=int;
Die Zeilenhöhe müsst also mit: Form1->StringGrid1->RowHeights[index]=int;

Bei der endlosschleife kann ich dir leider nicht helfen.

Noch ne Frage an dich:
Wie hast du das mit den einzelnen farbigen Zellen umgesetzt?
Wie heißt dort der Befehl?

Felix
Nach oben
Beiträge der letzten Zeit anzeigen:   
Dieses Forum ist gesperrt, du kannst keine Beiträge editieren, schreiben oder beantworten.   Dieses Thema ist gesperrt, du kannst keine Beiträge editieren oder beantworten.    Informatikerboard.de Foren-Übersicht -> Delphi/Kylix Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehe zu:  
Du kannst keine Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum nicht antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum nicht posten
Du kannst Dateien in diesem Forum nicht herunterladen