Sorry wenn ich dazu auch nochmal ein Thema eröffne,
aber auch bei dieser Komponente gibt es unterschiede im Verhalten.
Ein Test Progg gibt es hierzu auch.
Das Problem ist, das onChangeEvent wird eben einfach mal so ausgeführt, und das auch gleich zweimal. Ebenso wenn man das FSE verlässt wird die onChange Prozedur ausgeführt.
Unter Windows geht gibt es keine Probleme.
FloatSpinEdit(FSE) Windows vs. Linux
FloatSpinEdit(FSE) Windows vs. Linux
- Dateianhänge
-
- FloatSpinEdit.7z
- (129.35 KiB) 51-mal heruntergeladen
Re: FloatSpinEdit(FSE) Windows vs. Linux
Ja, kann ich bestätigen, unter 64bit OpenSuse 42.2 KDE GTK2 mit Lazarus 1.9.0 r54809M FPC 3.0.2 x86_64-linux-gtk2.
Unter Windows 7 wird nur einmal OnChange gefeuert. Unter OpenSuse im Edit-Window ein- bis zweimal, mit Tasten hoch/runter 5 mal und mit Pfeiltasten 7 mal.
Das ist mMn ein Eintrag im Bugtracker wert!
Code: Alles auswählen
procedure TForm1.FSE1Change(Sender: TObject);
const
Cnt: Integer = 0;
var
aFloat: Double;
begin
aFloat := FSE1.Value;
Inc(Cnt);
Memo1.Text := FormatFloat('0.000000000', aFloat) + ' - Cnt: ' + IntToStr(Cnt);
end;
Unter Windows 7 wird nur einmal OnChange gefeuert. Unter OpenSuse im Edit-Window ein- bis zweimal, mit Tasten hoch/runter 5 mal und mit Pfeiltasten 7 mal.
Das ist mMn ein Eintrag im Bugtracker wert!
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
Re: FloatSpinEdit(FSE) Windows vs. Linux
Dachte ich es mir doch das es ein Bug ist, denn da ist ja kaum eigener Quellcode der das beeinflussen könnte.
Hast du auch mal getestet das FSE "zu verlassen"? Normal würde ja eine onExit-Prozedure gestartet, aber auch hier wird mehrmals das onChange-Event abgefeuert.
Als Hinweis noch, das gleich passiert mit einem normalen TSpinEdit auch.
Hast du auch mal getestet das FSE "zu verlassen"? Normal würde ja eine onExit-Prozedure gestartet, aber auch hier wird mehrmals das onChange-Event abgefeuert.
Als Hinweis noch, das gleich passiert mit einem normalen TSpinEdit auch.
-
- Beiträge: 306
- Registriert: Do 9. Apr 2009, 10:10
- OS, Lazarus, FPC: Ubuntu 9.10 (L 0.9.28 FPC 2.2.4)
- CPU-Target: 32Bit
- Wohnort: 785..
Re: FloatSpinEdit(FSE) Windows vs. Linux
Bevor jemand sich die Mühe nochmal macht. Den Bug gibts im Bugtracker schon, wenn auch noch nicht lange:
https://bugs.freepascal.org/view.php?id=31618
https://bugs.freepascal.org/view.php?id=31618
Ubuntu 9.10 (L 0.9.28 FPC 2.4.x)
Re: FloatSpinEdit(FSE) Windows vs. Linux
@u-boot: Danke für die Info!
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;