Kannst du das nochmal testen? Der Fix wurde in Lazarus Trunk 51471 eingepflegt. Meine Tests haben hier soweit gepasst. Ich hoffe bei dir auch?! Siehe http://bugs.freepascal.org/view.php?id=27189Mathias hat geschrieben:Ich habe mir das Programm nochmal angeguckt.
Wen ich die Exe des Project unter Linux mit Wine starte, dann läuft es wie gewünscht.
Starte ich aber die Exe unter WinXP, läuft in der VirtualBox, dann ist der Fehler immer noch feststellbar.
So wie es aussieht, ist das kein Problem von Lazarus, sondern von Windows.
Ich habe das Programm mit Lazarus 1.6, FPC 3.0 frisch kompiliert.
ListView MousUp
Re: ListView MousUp
Code: Alles auswählen
type
TLiveSelection = (lsMoney, lsChilds, lsTime);
TLive = Array[0..1] of TLiveSelection;
-
- Beiträge: 6193
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: ListView MousUp
Unter Windows habe ich keine Trunk-Version von Lazarus.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot
Re: ListView MousUp
Mathias hat geschrieben:Ich habe folgenden Code:Code: Alles auswählen
procedure TForm1.ListView1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: integer);
begin
if Button = mbRight then begin
Writeln('ListView');
end;
end;
procedure TForm1.TreeView1MouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: integer);
begin
if Button = mbRight then begin
Writeln('TreeView');
end;
end;
procedure TForm1.FormMouseUp(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: integer);
begin
if Button = mbRight then begin
Writeln('Form');
end;
end;
Bei Form und TreeView wird Writeln nur aufgerufen, wen man die Maustaste loslässt, dies währe richtig.
Aber bei ListView wird Writeln auch beim drücken der Maustaste aufgerufen.
Ist nachvollziehbar bei Version 1.2RC2 und 1.3, beide Windows
Unter Linux funktionieren alle 3 richtig.
Ich wollte hier eigentlich bloß mitlesen, aber angesichts des schrecklichen Codedesigns kann ich das nicht.
Writeln() in der GUI??????
Wie geht das?
Re: ListView MousUp
In den Projekteinstellungen unter "Konfiguration und Ziele" > "Zielbetriebssystemspezifische Einstellungen" das Häkchen vor "Win32 GUI Anwendung" entfernen.
-
- Beiträge: 6193
- Registriert: Do 2. Jan 2014, 17:21
- OS, Lazarus, FPC: Linux (die neusten Trunk)
- CPU-Target: 64Bit
- Wohnort: Schweiz
Re: ListView MousUp
Ich wollte hier eigentlich bloß mitlesen, aber angesichts des schrecklichen Codedesigns kann ich das nicht.
In der Praxis macht man so etwas nicht, aber hier ging es um MausUp.
Man hätte auch viel komplizierter in ein Memo schreiben können.
Nachtrag:
Ich habe den Code gerade nochmals getestet, so wie es scheint, ist die in der neusten Trunk behoben, zumindest unter Liunx.
Mit Lazarus sehe ich grün
Mit Java und C/C++ sehe ich rot
Mit Java und C/C++ sehe ich rot