Variablen und WindowCallbacks

Anfängerfragen zum Programmieren mit PureBasic.
Benutzeravatar
Fusselohr
Beiträge: 236
Registriert: 02.04.2007 10:43
Kontaktdaten:

Variablen und WindowCallbacks

Beitrag von Fusselohr »

Hallo Leute,
mag jetzt etwas blöd klingen aber ich hab eigentlich keine Ahnung wie Windows Callbacks funktionieren. Ich weis nur das man mit ihrer Hilfe zum Beispiel bei Scrollbars direkte Aktualiesierungen erreichen kann. Ich möchte eigentlich nur eine Variable mithilfe eines Scrollbargadets aktualisieren aber ich weis einfach nicht wie das funktioniert... :D - könnt mir jm. vielleicht ein Tipp oder so geben ?

Gruß Fusselohr
Mein Projekt besteht immernoch und wächst stündlich.

Du willst die Entwicklung mitverfolgen ?
Dann besuche jetzt den Entwicklungsblog unter
http://rpg-fire-games.blogspot.com/
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Re: Variablen und WindowCallbacks

Beitrag von Kiffi »

kleines (hoffentlich einleuchtendes) Beispiel:

Code: Alles auswählen

#myWindow=0
#myScrollBarGadget=0

Procedure Callback(hwnd,msg,wParam,lParam)
  
  If msg = #WM_HSCROLL And lParam = GadgetID(#myScrollBarGadget)
    
    SetWindowTitle(#myWindow, Str(GetGadgetState(#myScrollBarGadget)))
    
  EndIf
  
  ProcedureReturn #PB_ProcessPureBasicEvents
  
EndProcedure

OpenWindow(#myWindow,#PB_Ignore,#PB_Ignore,240,60,"CallbackTest")

CreateGadgetList(WindowID(#myWindow))

ScrollBarGadget(#myScrollBarGadget,20,20,200,20,1,1000,1)   

SetWindowCallback(@Callback())
 
Repeat
  event = WaitWindowEvent()     
Until event = #PB_Event_CloseWindow
Beweg mal den Slider und beobachte dabei den Fenstertitel.

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

@Kiffi und nun verräzt du noch wo man eine auflistung von windoofcontrols
nebst zugehörigen messages (wie #wm_hscoll) findet
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Fusselohr
Beiträge: 236
Registriert: 02.04.2007 10:43
Kontaktdaten:

Beitrag von Fusselohr »

@ Kiffi: Danke für das Beispiel :D. Geht das denn nur mit Funktionen, wie Text ändern oder so oder gibts auch ne Möglichkeit wie gesagt ne Variable demnach zu bestimmen ohne eventuell ein Textgadget oder so zu verwenden dass dann ausgelesen wird ?

@ bobobo: In der WinApi ?
Mein Projekt besteht immernoch und wächst stündlich.

Du willst die Entwicklung mitverfolgen ?
Dann besuche jetzt den Entwicklungsblog unter
http://rpg-fire-games.blogspot.com/
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

bobobo hat geschrieben:@Kiffi und nun verräzt du noch wo man eine auflistung von windoofcontrols
nebst zugehörigen messages (wie #wm_hscoll) findet
Für Dich doch gerne ;-)

Beispielsweise hier für WM_HSCROLL: http://msdn2.microsoft.com/en-us/library/bb787575.aspx

Alle weiteren Infos kannst Du Dir über den Tree auf der linken Seite
erarbeiten.
Fusselohr hat geschrieben:gibts auch ne Möglichkeit wie gesagt ne Variable demnach zu bestimmen
Meinst Du so?

Code: Alles auswählen

Global MeineVariable.l

Procedure Callback(hwnd,msg,wParam,lParam)
  If msg = #WM_HSCROLL And lParam = GadgetID(#myScrollBarGadget)
    MeineVariable = GetGadgetState(#myScrollBarGadget)
  EndIf
  ProcedureReturn #PB_ProcessPureBasicEvents
EndProcedure
Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
Fusselohr
Beiträge: 236
Registriert: 02.04.2007 10:43
Kontaktdaten:

Beitrag von Fusselohr »

Ja danke ^^. Vielen Dank. :allright: :allright: :allright:
Mein Projekt besteht immernoch und wächst stündlich.

Du willst die Entwicklung mitverfolgen ?
Dann besuche jetzt den Entwicklungsblog unter
http://rpg-fire-games.blogspot.com/
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

Kiffi hat geschrieben: Alle weiteren Infos kannst Du Dir über den Tree auf der linken Seite
erarbeiten.
ich will ne fertige liste und nix erarbeiten :cry:

vielleicht sollte ich mal den dllfreak2001 fragen, ob der so ne liste häkeln
mag. erstens isses windoof und zweitens scheint der ja ne menge zeit zu
haben :mrgreen:
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
Kiffi
Beiträge: 10714
Registriert: 08.09.2004 08:21
Wohnort: Amphibios 9

Beitrag von Kiffi »

bobobo hat geschrieben:ich will ne fertige liste und nix erarbeiten :cry:
fauler Sack! ;-)

jaPBe verfügt über einen Konstanten-Explorer, in dem besagte Konstanten
schön übersichtlich aufgelistet sind.

Bild

Grüße ... Kiffi
a²+b²=mc²
Benutzeravatar
bobobo
jaAdmin
Beiträge: 3873
Registriert: 13.09.2004 17:48
Kontaktdaten:

Beitrag von bobobo »

ein solcher explorer ist in der PB-IDE auch drin (nicht ganz so
informationsbehaftet aber immerhin)

Was mir eigentlich fehlt ist ne sinnvolle zuordung der messages zu den
zugehörigen controls und andersrum.
‮pb aktuel 6.2 windoof aktuell und sowas von 10
Ich hab Tinnitus im Auge. Ich seh nur Pfeifen.
Benutzeravatar
edel
Beiträge: 3667
Registriert: 28.07.2005 12:39
Computerausstattung: GameBoy
Kontaktdaten:

Beitrag von edel »

Fehlen tut da ueberhaupt nichts. MSDN bietet fuer jedes Control
eine Seite, wo alle Nachrichten, Funktionen, Makros und Strukturen
uebersichtlich aufgelistet werden. Mit dem neuen MSDN ist es jetzt
noch einfacher. Einfach mal im 2 Frame die Menus aufklappen.
Antworten