Post by divanebaba » 31 Jul 2018, 18:41
Guten Tag Herr Doktor.
Einen Großteil Deiner Fragen kann ich nicht beantworten, aber die Automatisierung von Eingaben ist etwas, das ich vor ein paar Jahren auf folgende Weise gelöst oder zumindest vereinfacht habe.
Code: Select all
Namen = Mustyermann, Max|Divane, Baba|Müller, Max
Behandlung = RöThorax|RöSchienbein|RöOberschenkel|RöHastDuNichtGesehen
Gui, 1: Add, Text, x5 y5, Name
Gui, 1: Add, Text, xp yp+30, Behandlung
Gui, 1: Add, Text, xp yp+30, Datum
Gui, 1: Add, ComboBox , % " hwndNameID x" 100 " y" 5 " vName gName", %Namen%
Gui, 1: Add, ComboBox , % " hwndBehaID xp yp+30 vBeha gBeha", %Behandlung%
Gui, 1: Add, DateTime , % " ChooseNone2 xp yp+30 vDate", dddd dd.MM.yyyy
Gui, 1: show,, MeinBeispiel
return
Name:
{
ControlGetText, Eingabe,, ahk_id %NameID%
ControlGet, Liste, List, , , ahk_id %NameID%
If ( !CheckDelKey && !CheckBackspaceKey && RegExMatch(Liste, "`nmi)^(\Q" . Eingabe . "\E.*)$", Match) ){
ControlSetText, , %Match%, ahk_id %NameID%
Selection := StrLen(Eingabe) | 0xFFFF0000
SendMessage, CB_SETEDITSEL := 0x142, , Selection, , ahk_id %NameID%
} Else {
CheckDelKey = 0
CheckBackspaceKey = 0
}
return
}
Beha:
{
ControlGetText, Eingabe,, ahk_id %BehaID%
ControlGet, Liste, List, , , ahk_id %BehaID%
If ( !CheckDelKey && !CheckBackspaceKey && RegExMatch(Liste, "`nmi)^(\Q" . Eingabe . "\E.*)$", Match) ){
ControlSetText, , %Match%, ahk_id %BehaID%
Selection := StrLen(Eingabe) | 0xFFFF0000
SendMessage, CB_SETEDITSEL := 0x142, , Selection, , ahk_id %BehaID%
} Else {
CheckDelKey = 0
CheckBackspaceKey = 0
}
return
}
#if winactive("MeinBeispiel")
$Enter::
send {tab}
return
#if
Die Variable mit den Namen Deiner Patienten solltest Du bei jedem Programmstart neu kreieren, denn sonst hast Du zuviel Arbeit mit dem Pflegen dieser Variablen.
Sollte jede Deiner Behandlungen mit
Rö wie Röntgen beginnen, kannst Du das
Rö auch weglassen und später hinzufügen. Hat den Vorteil, daß Du noch direkter zum Ziel navigieren kannst.
Was ich jetzt nicht gezeigt habe, ist, wie man aus diesen drei Variablen anschließend einen Dateinamen erzeugt. Aber ich denke, das wirst Du bestimmt kennen. If not, ask the ultimate turkish süperman, maybe german teachers recommendation failed in this case.
Mehr kann ich nicht tun.
Ich wünsche gute Besserung (computertechnisch gemeint
)
Guten Tag Herr Doktor.
Einen Großteil Deiner Fragen kann ich nicht beantworten, aber die Automatisierung von Eingaben ist etwas, das ich vor ein paar Jahren auf folgende Weise gelöst oder zumindest vereinfacht habe.[spoiler2=][code]Namen = Mustyermann, Max|Divane, Baba|Müller, Max
Behandlung = RöThorax|RöSchienbein|RöOberschenkel|RöHastDuNichtGesehen
Gui, 1: Add, Text, x5 y5, Name
Gui, 1: Add, Text, xp yp+30, Behandlung
Gui, 1: Add, Text, xp yp+30, Datum
Gui, 1: Add, ComboBox , % " hwndNameID x" 100 " y" 5 " vName gName", %Namen%
Gui, 1: Add, ComboBox , % " hwndBehaID xp yp+30 vBeha gBeha", %Behandlung%
Gui, 1: Add, DateTime , % " ChooseNone2 xp yp+30 vDate", dddd dd.MM.yyyy
Gui, 1: show,, MeinBeispiel
return
Name:
{
ControlGetText, Eingabe,, ahk_id %NameID%
ControlGet, Liste, List, , , ahk_id %NameID%
If ( !CheckDelKey && !CheckBackspaceKey && RegExMatch(Liste, "`nmi)^(\Q" . Eingabe . "\E.*)$", Match) ){
ControlSetText, , %Match%, ahk_id %NameID%
Selection := StrLen(Eingabe) | 0xFFFF0000
SendMessage, CB_SETEDITSEL := 0x142, , Selection, , ahk_id %NameID%
} Else {
CheckDelKey = 0
CheckBackspaceKey = 0
}
return
}
Beha:
{
ControlGetText, Eingabe,, ahk_id %BehaID%
ControlGet, Liste, List, , , ahk_id %BehaID%
If ( !CheckDelKey && !CheckBackspaceKey && RegExMatch(Liste, "`nmi)^(\Q" . Eingabe . "\E.*)$", Match) ){
ControlSetText, , %Match%, ahk_id %BehaID%
Selection := StrLen(Eingabe) | 0xFFFF0000
SendMessage, CB_SETEDITSEL := 0x142, , Selection, , ahk_id %BehaID%
} Else {
CheckDelKey = 0
CheckBackspaceKey = 0
}
return
}
#if winactive("MeinBeispiel")
$Enter::
send {tab}
return
#if[/code][/spoiler2]Die Variable mit den Namen Deiner Patienten solltest Du bei jedem Programmstart neu kreieren, denn sonst hast Du zuviel Arbeit mit dem Pflegen dieser Variablen.
Sollte jede Deiner Behandlungen mit [c]Rö[/c] wie Röntgen beginnen, kannst Du das [c]Rö[/c] auch weglassen und später hinzufügen. Hat den Vorteil, daß Du noch direkter zum Ziel navigieren kannst.
Was ich jetzt nicht gezeigt habe, ist, wie man aus diesen drei Variablen anschließend einen Dateinamen erzeugt. Aber ich denke, das wirst Du bestimmt kennen. If not, ask the ultimate turkish süperman, maybe german teachers recommendation failed in this case.
Mehr kann ich nicht tun.
Ich wünsche gute Besserung (computertechnisch gemeint :crazy: )