Wie kann ich in einer Grid-Komponente für jede Zelle einen anderen Hint ausgeben?
Ich möchte für jede Zelle eines StringGrids einen eigenen Hint anzeigen. Der
Hinweistext wird aber erst aktualisiert, wenn der Mauszeiger das Grid verlässt. Wie kann
ich einen neuen Hinweis anzeigen, wenn der Mauszeiger über eine neue Zelle bewegt wird?
Damit der Hint wieder auftaucht, muß man nur Application.CancelHint aufrufen - die
MouseMove-Methode sieht dann wie folgt aus:
var LastCol, LastRow : longint; procedure TForm1.StringGridMouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var ACol, ARow: longint; begin StringGrid.MouseToCell(X, Y, ACol, ARow); StringGrid.Hint:='Dieser Hinweis gilt nur für die Zelle '+IntToStr(ACol)+':'+IntToStr(ARow); if (ACol<>LastCol) or (ARow<>LastRow) then begin Application.CancelHint; LastCol:=ACol; LastRow:=ARow; end; end;
Delphi 1 | Delphi 2 | Delphi 3 | Delphi 4 |
nicht getestet | Version nicht betroffen | getestet |
siehe auch:
Wie kann man bei einer StringGrid-Komponente mehrzeiligen Text ausgeben?
Wie kann ich bei einer Stringgrid nur bestimmte Zeilen auf Readonly
setzen?
Wie kann ich ein Bild in eine Stringgrid zeichnen?