Autor Beitrag
tortom1000
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175

Win XP, Win Server 2003 - 2012, Win 7
Delphi 7
BeitragVerfasst: So 13.07.08 09:49 
Hallo,
ich habe ein unter WinXP mit eingestelltem klassischen Design funktionierendes Progrämmchen mit mehreren DBGrid's. Diese sind alle
gleich (identisch) eingestellt. (Lediglich die Datenquelle unterscheidet sich...).

Klicke ich in ein Feld, wird die gesamte Zeile markiert. Die Grid's sind "ReadOnly".

Stelle ich nun im BS das Design auf XPStyle um, funktionieren 2 Grid's nicht mehr richtig. D. h. die Zelle, die ich anklicke, wird nun einzeln markiert. Die Zeile, die vor dem Klick markiert war, ändert sich nicht, bleibt also markiert. Zusätzlich wird jedoch noch die Zelle markiert, und die Nächste, die ich anklicke usw.

Stelle ich das Klassische Design wieder ein, funktioniert wieder alles.

Ich habe folgendes schon probiert:

Ich habe eines der nicht funktionierenden Grid's kopiert und wieder eingefügt. Dieses tut es dann ganz normal. Nun habe ich das ursprüngliche gelöscht und dem neuen Grid den Namen des alten Grid's gegeben. Schon ist der alte Fehler wieder da.
Daraus interpretierte ich, das erst zur Laufzeit des Programms das Grid so verändert wird, das es zu dem Fehler kommt. Daher habe ich alle Veränderungen am Grid wie beispielsweise unter "DBGrid_DrawColumnCell" mit den funktionierenden verglichen. Dummerweise ist aber alles bis auf die Datenquelle völlig identisch.

Hat hier jemand 'ne Ahnung, was das verursacht? Kamm man Delphi dazu bewegen, den XPStyle erst gar nicht zu benutzen?

Viele Grüße
Tortom
Jerk
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starofftopic star
Beiträge: 251

Vista Ultimate, Ubuntu
Turbo Delphi 2006
BeitragVerfasst: Di 15.07.08 16:14 
Ändert sich was wenn man die Komponente XPManifest hinzufügt?
tortom1000 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175

Win XP, Win Server 2003 - 2012, Win 7
Delphi 7
BeitragVerfasst: Mi 16.07.08 09:26 
Nein, leider nicht.
Ich habe auch schon die XP-Style-Komponente von den Jedis ausprobiert. Ebenfalls ohne Erfolg.
tortom1000 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175

Win XP, Win Server 2003 - 2012, Win 7
Delphi 7
BeitragVerfasst: So 20.07.08 13:12 
Nach gründlicher Überprüfung meines Problem mit den fehlerhaften DBGRID und Vergleich mit den funktionierenden DBGRID neige ich zu der Ansicht, das die Geschichte wohl ein Bug ist. Wenn ich den Focus vom DBGRID auf ein anderes Element umlenke und anschließend wieder zurück auf den DGBGRID, wird auch die gesamte Zeile im Grid markiert, wie es eigentlich sein sollte.
Ich bin ratlos.
tortom1000 Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starontopic star
Beiträge: 175

Win XP, Win Server 2003 - 2012, Win 7
Delphi 7
BeitragVerfasst: So 20.07.08 13:29 
Hab das Problem gefunden:

Es lag an der Breite des DBGRID auf dem Form. Nachdem ich die betroffenen DBGRID's um 6 Pixel breiter gemacht habe, ist alles wieder OK.

Wie das mit dem XPSTYLE, den ich ja nicht benutze, zusammen hängt, bleibt mir ein Rätsel....

Wie dem auch sei, Problem gelöst :-)

Gruß
Tortom