![]() |
Anzeige:
|
|
|||||||
| XProfan Alles rund um die Programmiersprache XProfan. |
|
![]() |
|
|
LinkBack | Themen-Optionen | Ansicht |
|
|
#31 (Direktlink) |
|
War schon mal da
Registriert seit: 21.10.2011
Beiträge: 32
|
Hallo _Joerg_
Zu Deinen Beispielen habe ich noch eine Frage: Funktioniert das auch innerhalb von Dialogfenstern? Das wäre nämlich sehr wichtig, um mehrere Dialoge verwenden zu können, und nicht nur ein Hauptfenster. Das fiel mir eben so auf, als ich mal näher in den Quelltext schaute. Gruß Trf/MS |
|
|
|
|
|
#32 (Direktlink) |
|
Weiß worum´s geht
![]() Registriert seit: 15.02.2011
Beiträge: 106
|
Das mußt Du einfach mal testen. In Dialogen wird ja Enter sowieso erkannt.
__________________
Anhören lohnt sich wuestensand.info |
|
|
|
|
|
#33 (Direktlink) |
|
Weiß worum´s geht
![]() Registriert seit: 15.02.2011
Beiträge: 106
|
Mit 'ner kleinen Anpassung geht auch das:
Code:
$H windows.ph
Def CN(2) If(%message = $0111,((&lparam = &(1)) And (HiWord(&wparam) = &(2))),0)
Def EN_CHANGE(1) CN(&(1),$0300)
Def OnEnter(0) MenuItem(13)
Def OnESC(0) MenuItem(27)
Def OnTAB(0) MenuItem(9)
UserMessages $10
Proc GetNextChild
If %pcount = 2
Parameters h&,FirstID%
Else
Parameters h&
Var FirstID% = 1000
EndIf
Var ID% = ItemId(h&)
Var hNext& = GetHandle(~GetParent(h&),ID% + 1)
Case hNext& = 0:hNext& = GetHandle(~GetParent(h&),FirstID%)
Return hNext&
EndProc
AddHotKey 9,9,0
AddHotKey 13,13,0
AddHotKey 27,27,0
Proc Dlg
Var Dlg& = Create("Dialog",%hwnd,"Dialog und Enter",100,100,400,400)
Var EdDia1& = Create("Edit",Dlg&,"Dialogtext 1",10,10,200,24)
Var EdDia2& = Create("Edit",Dlg&,"Dialogtext 2",10,40,200,24)
Var EdDia3& = Create("Edit",Dlg&,"Dialogtext 3",10,70,200,24)
SetFocus(EdDia1&)
While 1
WaitInput
If (%Umessage = $10) And (%mwnd = Dlg&)
Break
ElseIf OnTAB()
Print ItemID(Dlg&,EdDia1&)
SetFocus(GetNextChild(%getfocus,ItemID(EdDia1&)))
Print "auf zum Nächsten " + GetText$(GetNextChild(%getfocus))
'ElseIf On...()
'und das restliche Zeugs auch noch
EndIf
Wend
DestroyWindow(Dlg&)
EndProc
Cls
Var Ed& = Create("Edit",%hwnd,"Text 1",400,10,200,24)
Var Ed1& = Create("Edit",%hwnd,"Text 2",400,40,200,24)
Var Ed2& = Create("Edit",%hwnd,"Text 3",400,70,200,24)
Var Ed3& = Create("Edit",%hwnd,"Text 4",400,100,200,24)
Var Ed4& = Create("Edit",%hwnd,"Text 5",400,130,200,24)
Var btn& = Create("Button",%hwnd,"Dialog",400,170,100,24)
Print "Taste oder Enter drücken"
While 1
WaitInput
If %Umessage = $10
Break
ElseIf Clicked(Btn&)
Dlg
ElseIf OnTAB()
SetFocus(GetNextChild(%getfocus))
Print "auf zum Nächsten " + GetText$(GetNextChild(%getfocus))
ElseIf OnEnter()
Print "Enter gedrückt " + GetText$(%getfocus)
ElseIf OnESC()
Print "Raus aus dem Edit "
SetFocus(%hwnd)
ElseIf EN_CHANGE(Ed&)
Print GetText$(&lparam)
EndIf
Wend
__________________
Anhören lohnt sich wuestensand.info |
|
|
|
|
|
#34 (Direktlink) |
|
War schon mal da
Registriert seit: 21.10.2011
Beiträge: 32
|
Hi _Joerg_
Genau das ist die Lösung. Ferner hast Du auch noch einige andere Fragen mit beantwortet, nämlich das "im Kreis setzen" des Focus mittels TAB und eine Änderungserkennung. Jetzt bin ich erst mal wunschlos glücklich und kann weiter machen. Zumindest bis die nächste Frage auftaucht. Vielen Dank noch mal für die Nachtschicht! Gruß Trf/MS |
|
|
|
![]() |
|
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
|
|
Ähnliche Themen
|
||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Variable Linkbox bei Ebay | Zeriel | Sonstige Programmiersprachen | 0 | 27.07.2008 18:45 |
| Variable von VBA an Excel übergeben! | NeXoDrEuS | Visual Basic, Visual Basic.NET | 0 | 04.07.2008 10:13 |
| DivX6(Variable Bitrate) | Switcher | Software - Allgemein | 0 | 04.08.2006 00:02 |
| system variable | powerweb | Windows XP | 3 | 06.04.2006 10:25 |
| Kann Arrays mit Anzahl von const-Variable nicht deklarieren | ~Flammadarion~ | C/C++, Visual C++, Visual C++.NET | 3 | 21.03.2005 18:56 |