Goto wurde offiziel als veraltet deklariert und wird nicht mehr supported, was heißt, das der Befehl jederzeit
verschwinden kann. Warum das nicht in der aktuellen Hilfe steht, weiß ich allerdings nicht, aber es wurde irgendwo offiziel
von Fred gesagt. Ist aber so lange her, da fang ich jetzt nicht an zu suchen.
#WM_LBUTTONUP funktioniert nicht mehr mit PB 5.11
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: #WM_LBUTTONUP funktioniert nicht mehr mit PB 5.11
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

- captain_hesse
- Beiträge: 138
- Registriert: 17.05.2009 18:55
- Computerausstattung: Windows 7 Ultimate 64 Bit / AMD Phenom II 1090T, 6x3200 MHz / AMD HD-6850 / PureBasic 5.1 (x86) (x64)
- Wohnort: Saarland
Re: #WM_LBUTTONUP funktioniert nicht mehr mit PB 5.11
Ich möchte gerne zu diesem Thema etwas anmerken weil ich vor kurzem auch Probleme damit hatte.
#PB_Event_LeftClick ist nicht das Selbe wie #WM_LBUTTONDOWN während das Erste, erst dann reagiert wenn man die linke Maustaste wieder los lässt reagiert #WM_LBUTTONDOWN sofort nachdem die linke Maustaste gedrückt wurde was manchmal wünschenswert bzw. sogar nötig ist weil man sonst nicht mehr feststellen kann ob die linke Maustaste gerade gedrückt wird außer bei einem CanvasGadget was aber auch nicht immer ohne Probleme geht. Es wäre daher vieleicht ganz gut wenn es noch ein PB Event geben würde z.B. ( #PB_Event_LBUTTONDOWN ) oder man behält #WM_LBUTTONDOWN eben einfach bei. Nun aber nochmal zurück zur Frage, man kann also #PB_Event_LeftClick anstatt #WM_LBUTTONUP verwenden weil es eben erst dann reagiert wenn man den linken Mausknopf wieder loslässt.
viele Grüße Armin
#PB_Event_LeftClick ist nicht das Selbe wie #WM_LBUTTONDOWN während das Erste, erst dann reagiert wenn man die linke Maustaste wieder los lässt reagiert #WM_LBUTTONDOWN sofort nachdem die linke Maustaste gedrückt wurde was manchmal wünschenswert bzw. sogar nötig ist weil man sonst nicht mehr feststellen kann ob die linke Maustaste gerade gedrückt wird außer bei einem CanvasGadget was aber auch nicht immer ohne Probleme geht. Es wäre daher vieleicht ganz gut wenn es noch ein PB Event geben würde z.B. ( #PB_Event_LBUTTONDOWN ) oder man behält #WM_LBUTTONDOWN eben einfach bei. Nun aber nochmal zurück zur Frage, man kann also #PB_Event_LeftClick anstatt #WM_LBUTTONUP verwenden weil es eben erst dann reagiert wenn man den linken Mausknopf wieder loslässt.
viele Grüße Armin
Windows 7 Ultimate 64 Bit / AMD Phenom II 1090T, 6x3200 MHz / AMD HD-6850 / PureBasic 5.1 (x86) (x64)
Re: #WM_LBUTTONUP funktioniert nicht mehr mit PB 5.11
#WM_LBUTTONDOWN funktioniert doch auch noch und #WM_LBUTTONUP kann nicht mehr abgefragt werden, weil dieses Event durch ein echtes PB-Event ersetzt wird.
Und das UP ein CLICK ist, ist konsequent zum Canvas-Event.
Und das UP ein CLICK ist, ist konsequent zum Canvas-Event.
Code: Alles auswählen
Enumeration
#Window
#Gadget
EndEnumeration
OpenWindow(#Window, 0, 0, 800, 600, "WindowTitle", #PB_Window_MinimizeGadget|#PB_Window_ScreenCentered)
Repeat
Select WaitWindowEvent()
Case #PB_Event_CloseWindow
End
Case #WM_LBUTTONDOWN
Debug "Down"
Case #PB_Event_LeftClick
Debug "Up"
EndSelect
ForEverPB 6.01 ― Win 10, 21H2 ― Ryzen 9 3900X, 32 GB ― NVIDIA GeForce RTX 3080 ― Vivaldi 6.0 ― www.unionbytes.de
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
Aktuelles Projekt: Lizard - Skriptsprache für symbolische Berechnungen und mehr
- ts-soft
- Beiträge: 22292
- Registriert: 08.09.2004 00:57
- Computerausstattung: Mainboard: MSI 970A-G43
CPU: AMD FX-6300 Six-Core Processor
GraKa: GeForce GTX 750 Ti, 2 GB
Memory: 16 GB DDR3-1600 - Dual Channel - Wohnort: Berlin
Re: #WM_LBUTTONUP funktioniert nicht mehr mit PB 5.11
Also nochmal
Offiziel werden nur PB-Events, also nur solche die mit #PB_Event anfangen, im EventLoop von PB unterstützt, alle anderen
können funktionieren, aber man sollte sich nicht darauf verlassen, das dies so bleibt. Windows-Messages #WM_ werden
nur im Callback unterstützt. Wer die benötigt, sollte also ein entsprechendes Callback nutzen.
Ähnliches gilt auch für Gadgets. Wer Gadgetsfunktionen per API zur Verfügung stellt, sollte seine Controls auch per
API erzeugen. Es wird zwar meist mit Gadgets funktionieren, aber dies wird nicht offiziel zugesagt und kann sich jeder-
zeit ändern, auch wenn es sehr unwahrscheinlich ist.
Es ist also vollkommen sinnlos, hier zu melden welche #WM_... Messages im PB-EventLoop nicht ankommen, welche
SendMessage_(...) bei Gadgets nicht funktionieren usw., weil dies nicht garantiert wird.
Natürlich kann man sich im entsprechendem Forum wünschen, das dieses oder jenes Event nativ hinzugefügt wird, und es
wurden ja inzwischen eine Menge hinzugefügt. Aber der "verlust" von #WM_ messages im EventLoop, braucht eigentlich
gar nicht erwähnt werden. Wer das bisher so genutzt hat, sollte sich überlegen, ob er diese nicht besser ändert.
PS: zum CanvasGadget, erst Down, dann Click und dann erst Up! Sind also 3 Events die gefeuert werden, ob die nun
Real existieren, sei mal dahingestellt, in dieser Reihenfolge (unter Linux erst seit 5.11, dort kam vorher erst Up und
dann Click) kommen sie an.
Gruß
Thomas
Offiziel werden nur PB-Events, also nur solche die mit #PB_Event anfangen, im EventLoop von PB unterstützt, alle anderen
können funktionieren, aber man sollte sich nicht darauf verlassen, das dies so bleibt. Windows-Messages #WM_ werden
nur im Callback unterstützt. Wer die benötigt, sollte also ein entsprechendes Callback nutzen.
Ähnliches gilt auch für Gadgets. Wer Gadgetsfunktionen per API zur Verfügung stellt, sollte seine Controls auch per
API erzeugen. Es wird zwar meist mit Gadgets funktionieren, aber dies wird nicht offiziel zugesagt und kann sich jeder-
zeit ändern, auch wenn es sehr unwahrscheinlich ist.
Es ist also vollkommen sinnlos, hier zu melden welche #WM_... Messages im PB-EventLoop nicht ankommen, welche
SendMessage_(...) bei Gadgets nicht funktionieren usw., weil dies nicht garantiert wird.
Natürlich kann man sich im entsprechendem Forum wünschen, das dieses oder jenes Event nativ hinzugefügt wird, und es
wurden ja inzwischen eine Menge hinzugefügt. Aber der "verlust" von #WM_ messages im EventLoop, braucht eigentlich
gar nicht erwähnt werden. Wer das bisher so genutzt hat, sollte sich überlegen, ob er diese nicht besser ändert.
PS: zum CanvasGadget, erst Down, dann Click und dann erst Up! Sind also 3 Events die gefeuert werden, ob die nun
Real existieren, sei mal dahingestellt, in dieser Reihenfolge (unter Linux erst seit 5.11, dort kam vorher erst Up und
dann Click) kommen sie an.
Gruß
Thomas
PureBasic 5.73 LTS | SpiderBasic 2.30 | Windows 10 Pro (x64) | Linux Mint 20.1 (x64)
Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.

Nutella hat nur sehr wenig Vitamine. Deswegen muss man davon relativ viel essen.
