Ich möchte per Mousewhel den inhalt eines Editfeldes (lcvParameter)verändern. Dazu habe ich folgendes programmiert:
Code: Alles auswählen
procedure TCV_Form.lcvParameterMouseWheelDown(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
var
wert:0..255;
begin
wert := strToInt(lcvParameter.text);
if wert > 0 then
wert -= 1;
lcvParameter.Text:= IntToStr(wert);
end;
procedure TCV_Form.lcvParameterMouseWheelUp(Sender: TObject;
Shift: TShiftState; MousePos: TPoint; var Handled: Boolean);
var
wert:0..255;
begin
wert := strToInt(lcvParameter.text);
if wert < 255 then
wert += 1;
lcvParameter.Text:= IntToStr(wert);
end;
Komischerweise wird jede der beiden Proceduren 3x ausgeführt, was natürlich dazu führt, dass sich der Wert in 3er Schritten verändert. Ich habe keine Erklärung dafür,
Ich habe es auch schon mit der Procedure onMousewheel probiert, der gleiche Effekt.
Habt Ihr eine Ahnung?
Ich habe auch Lazarus neu gestartet, hat auch nichts gebracht..
Gruß Fritz