KGrid mit TComboBox wenn Maus über Zelle.
KGrid mit TComboBox wenn Maus über Zelle.
Ich möchte in einem Grid eine Combobox einbauen was mir auch schon gelingt, ober sie soll auch angezeigt werten wenn ich mit der Maus über der Zelle bin. Die Combobox sollte natürlich beim ersten Klick auf den Pfeil Aufgehen.
kann mir einer sagen wie ich das mache?
Danke schon einmal im voraus.
Gruß Bernd
kann mir einer sagen wie ich das mache?
Danke schon einmal im voraus.
Gruß Bernd
Re: KGrid mit TComboBox wenn Maus über Zelle.
Meinst du wirklich KGrid?
Dann würde ich mal hier fragen: http://www.tkweb.eu/en/delphicomp/kgrid.html" onclick="window.open(this.href);return false;
Dann würde ich mal hier fragen: http://www.tkweb.eu/en/delphicomp/kgrid.html" onclick="window.open(this.href);return false;
-
- Lazarusforum e. V.
- Beiträge: 2809
- Registriert: Sa 9. Sep 2006, 18:05
- OS, Lazarus, FPC: Linux (L trunk FPC trunk)
- CPU-Target: 64Bit
- Wohnort: Dresden
- Kontaktdaten:
Re: KGrid mit TComboBox wenn Maus über Zelle.
Ja, er meint wohl wirklich KGrid.
Das "Problem" tritt nähmlich selbst in der Demo auf. Solange die Zelle nicht den Fokus hat, wird der Wert ganz normal angezeigt. Erst, wenn die Zelle zum bearbeiten ausgewählt wird, sieht man auch, das sich darin eine TComboBox versteckt.
Das "Problem" tritt nähmlich selbst in der Demo auf. Solange die Zelle nicht den Fokus hat, wird der Wert ganz normal angezeigt. Erst, wenn die Zelle zum bearbeiten ausgewählt wird, sieht man auch, das sich darin eine TComboBox versteckt.
Johannes
Re: KGrid mit TComboBox wenn Maus über Zelle.
Ich hab mir jetzt folgende procedure hinzugefügt:
procedure TForm1.KGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var Col,Row:Integer;
begin
//KGrid1.SetFocus;
KGrid1.MouseToCell(X,y,Col,Row);
if (Col and Row) <> 0 then
begin
KGrid1.Col:=Col;
KGrid1.Row:=Row;
end;
end;
Aber leider ist jetzt immer der Fokus weg wenn die Maus beim Schreiben verrutscht.
gibt es eine Möglichkeit die ComboBox anzuzeigen ohne den Fokus zu wechseln?
procedure TForm1.KGrid1MouseMove(Sender: TObject; Shift: TShiftState; X,
Y: Integer);
var Col,Row:Integer;
begin
//KGrid1.SetFocus;
KGrid1.MouseToCell(X,y,Col,Row);
if (Col and Row) <> 0 then
begin
KGrid1.Col:=Col;
KGrid1.Row:=Row;
end;
end;
Aber leider ist jetzt immer der Fokus weg wenn die Maus beim Schreiben verrutscht.
gibt es eine Möglichkeit die ComboBox anzuzeigen ohne den Fokus zu wechseln?
Re: KGrid mit TComboBox wenn Maus über Zelle.
Naja, eigentlich ist das ja auch ganz normal und ressourcenschonend. Der Objekt-Inspektor funktioniert ja bspw. auch so.monta hat geschrieben: Das "Problem" tritt nähmlich selbst in der Demo auf. Solange die Zelle nicht den Fokus hat, wird der Wert ganz normal angezeigt. Erst, wenn die Zelle zum bearbeiten ausgewählt wird, sieht man auch, das sich darin eine TComboBox versteckt.
Re: KGrid mit TComboBox wenn Maus über Zelle.
Ihr könnt mir auch ein anderes Grid Vorschlagen das einfach zu benutzen ist.
Momentan bin ich noch am Testen.
Die Funktion kenne ich aus einer Software die mir auf der Arbeit benutzen,
und finde die überaus praktisch formalem in Verbindung mit einem SpinEdit.
Momentan bin ich noch am Testen.
Die Funktion kenne ich aus einer Software die mir auf der Arbeit benutzen,
und finde die überaus praktisch formalem in Verbindung mit einem SpinEdit.
-
- Beiträge: 512
- Registriert: Mo 25. Aug 2008, 18:17
- OS, Lazarus, FPC: ArchLinux x86, WinVista x86-64, Lazarus 0.9.29, FPC 2.4.1
- CPU-Target: x86
- Wohnort: Chemnitz
Re: KGrid mit TComboBox wenn Maus über Zelle.
Also ich denke das Standardverhalten ist schon gut so. Mal doch lieber in die Zelle mit der Combobox noch irgendein Symbol mit rein (ggf. nur, wenn die Maus darüber ist), so dass der Nutzer sieht "aha, hier kann ich noch editieren".
Re: KGrid mit TComboBox wenn Maus über Zelle.
Dan müsste sich das Symbol beim Ändern des Themes mit Ändern.
Ich Probiere jetzt das Lazarus Beispiel "GridCellEditor",
mit zwei Combobox aus:
1. normal für das Berabeiten
2. bei "StringGrid1MouseMove" und nicht aktiver Zelle
das Sollte eigentlich dann auch mit dem KGrid funktionieren.
Ich Probiere jetzt das Lazarus Beispiel "GridCellEditor",
mit zwei Combobox aus:
1. normal für das Berabeiten
2. bei "StringGrid1MouseMove" und nicht aktiver Zelle
das Sollte eigentlich dann auch mit dem KGrid funktionieren.