![]() |
Delphi-Version: 10.3 Rio
Procedure während gedrückthalten eines Buttons
Liste der Anhänge anzeigen (Anzahl: 1)
Anhang 52469 <- Bild der Aufgabe
Wir haben als Schulaufgabe, diese Aufgabe bekommen. Ich und meine Freunde verzweifeln nun aber schon seit heute morgen und wissen nicht wie wir dass mit dem gedrückthalten machen sollen. Ich hoffe uns kann hier wer helfen. Ein nachfragen beim Lehre ist aktuell leider nicht möglich weshalb ich hier nachfrage. Vielen Dank! Leon |
AW: Procedure während gedrückthalten eines Buttons
Liste der Anhänge anzeigen (Anzahl: 1)
Hallo-
Die "Befehlsschaltfläche" ist wohl ein ganz normaler
Delphi-Quellcode:
, richtig?
TButton
Ihr habt gesehen dass es für den Button nicht nur
Delphi-Quellcode:
gibt, oder? Protipp: Es hat was mit der Maus zu tun.
OnClick
|
AW: Procedure während gedrückthalten eines Buttons
Ja es handelt sich um einen normalen Button, wir haben auch die anderen Ereignisse gesehen wissen jedoch nicht welche dass tut, was wir möchten.
|
AW: Procedure während gedrückthalten eines Buttons
Zitat:
|
AW: Procedure während gedrückthalten eines Buttons
Delphi-Quellcode:
Wir haben es jetzt nach ein bisschen rumprobieren so gelöst. Danke für den Tipp mit der Maus. Wir waren davon ausgegangen dass diese Ereignisse nur für bewegungen mit der Maus sind.
procedure TF_TagNacht.Bt_BlitzMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin B := true; if B = true then begin Im_Wolke1.Picture.LoadFromFile('Regen.ico'); end; end; procedure TF_TagNacht.Bt_BlitzMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin B := false; if B = false then begin Im_Wolke1.Picture.LoadFromFile('Wolke.ico'); end; end; |
AW: Procedure während gedrückthalten eines Buttons
Nicht auf True und False vergleichen :warn:
Und wenn dann vereinfachen
Delphi-Quellcode:
procedure TF_TagNacht.Bt_BlitzMouseDown(Sender: TObject; Button: TMouseButton;
Shift: TShiftState; X, Y: Integer); begin Im_Wolke1.Picture.LoadFromFile('Regen.ico'); end; procedure TF_TagNacht.Bt_BlitzMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); begin Im_Wolke1.Picture.LoadFromFile('Wolke.ico'); end; Zitat:
|
AW: Procedure während gedrückthalten eines Buttons
Zitat:
|
AW: Procedure während gedrückthalten eines Buttons
Das können andere besser erklären als ich. Man macht es einfach nicht, da es nicht korrekt ist und zu Fehlern führen kann. Man vergleicht mit
Delphi-Quellcode:
und
if B then
Delphi-Quellcode:
. Aber das ganze Boolean-Zeug brauchst du da nicht.
if not B then
|
AW: Procedure während gedrückthalten eines Buttons
Klasse! :thumb:
In der Tat ist es auf den ersten Blick verwirrend, MouseDown/MouseUp zu sagen, aber angesichts von MouseMove (das sich um alle Bewegungen der Mouse im Bereich des Buttons kümmert) und dem Drang von Entwicklern doch irgendwie kurze Namen haben zu wollen, hat man eben statt OnMouseButtonDown nur OnMouseDown. Sherlock |
AW: Procedure während gedrückthalten eines Buttons
Zitat:
Zitat:
Weißt du ob das B nicht irgendeinen Sinn hatte? Der Vergleich auf B war überflüssig, ja, aber ob es das Setzen von B auch war kann niemand außer ihm selbst beurteilen. |
Alle Zeitangaben in WEZ +1. Es ist jetzt 10:38 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz