====== SendKeys - Tastenanschläge senden ======
Set WshShell = CreateObject("WScript.Shell")
WshShell.SendKeys "{F5}" ' Es wird F5 gedrückt
WshShell.SendKeys("^{F4}") ' Strg + F4 wird gedrückt
Eine Anwendung für diesen Befehl wäre beispielsweise das Kopieren von Text in die Zwischenablage (alternativ gibt es dafür den Skriptbefehl [[https://www.fixfoto.info/onlinehilfe/HH_FF_TextToClipboard.html|FF_TextToClipboard]]).\\ Im folgenden Skript wird ein einzugebender Text und ein Webadresse in HTML-Code gewandelt zu einem Textlink, der anschließend in der Zwischenablage zur Verfügung steht.\\ \\ Zur Übernahme des HTML-Codes in die Zwischenablage, wird dieser in ein Textelement geschrieben und nachdem der Fokus auf das Textelement gerichtet wurde, mit Senden von **Strg + A** der gesamte Text markiert und dann mit **Strg + C** kopiert. \\ Anschließend wird **Escape** gesendet. Damit wird die Schleife nochmal durchlaufen und anschließend der "CANCEL"-Fall simuliert, wodurch das Skript beendet wird. Würde man direkt mit **exit do** die Schleife verlassen, würde der gesamte Skripttext kopiert. Wer's nicht glaubt, kann es gerne ausprobieren.\\ \\ //VBS-Beispiel//\\
Option Explicit
const S_Groesse = "2/3/4/5/6/7/8"
Dim WshShell
Dim Abbruch,HTML_Code
Dim text_Text,text_Link
Dim D_Groesse,D_Kursiv,D_Fett
Dim Array,element
Set WshShell = CreateObject("WScript.Shell")
call main
Set WshShell = nothing
'-------------------------------------------------------------------------
Sub main
'** Start Dialog Textlink **
FF_AddDialog "Textlink",151,89
FF_AddControl "Textlink","Text","STATIC",5,5,12,10
FF_AddControl "Textlink","text_Text","SLEDIT",21,5,125,10
FF_AddControl "Textlink","Link","STATIC",5,18,12,10
FF_AddControl "Textlink","text_Link","SLEDIT",21,18,125,10
FF_AddControl "Textlink","Darstellung","GROUP",5,33,140,24
FF_AddControl "Textlink","Größe","STATIC",12,43,18,10
FF_AddControl "Textlink","D_Groesse","COMBO",29,43,18,10
FF_AddControl "Textlink","Kursiv","STATIC",62,43,16,10
FF_AddControl "Textlink","D_Kursiv","BOOL",85,44,8,8
FF_AddControl "Textlink","Fett","STATIC",109,43,12,10
FF_AddControl "Textlink","D_Fett","BOOL",127,44,8,8
FF_AddControl "Textlink","Abbrechen","BUTTON",43,72,34,11
FF_AddControl "Textlink","HTML-Code erzeugen","BUTTON",82,72,60,11
FF_AddControl "Textlink","HTML_Ergebnis","EDIT",5,62,140,4
'** End Dialog Textlink **
Array = split(S_Groesse,"/")
for each element in Array
FF_SetControl "Textlink","D_Groesse",element
next
do
Abbruch = false
Select Case FF_ShowDialog ("Textlink")
Case "HTML-Code erzeugen"
call Werte_Lesen
if not Abbruch then
call HTML
FF_SetControl "Textlink","HTML_Ergebnis",HTML_Code
msgbox HTML_Code & vbNewLine & vbNewLine & _
"Mit OK wird der HTML-Code in die Zwischenablage übernommen!",vbInformation,"HTML-Code"
FF_ActivateControl "Textlink","HTML_Ergebnis"
WshShell.SendKeys("^{a}") ' Strg + A (alles markieren)
WshShell.SendKeys("^{c}") ' Strg + C (Markierung kopieren)
WshShell.SendKeys("{ESC}") ' Escape (Beenden)
end if
Case "CANCEL", "Abbrechen"
exit do
Case Else
End Select
loop
FF_CloseDialog ("Textlink")
End Sub
'-------------------------------------------------------------------------
Sub Werte_Lesen
text_Text = FF_GetControl("Textlink","text_Text")
if text_Text = "" then
msgbox "Es wurde kein Untertitel eingegeben!",vbExclamation,"Abbruch"
Abbruch = true
exit sub
end if
text_Link = FF_GetControl("Textlink","text_Link")
if text_Link = "" then
msgbox "Es wurde kein Link eingegeben!",vbExclamation,"Abbruch"
Abbruch = true
exit sub
end if
D_Groesse = FF_GetControl("Textlink","D_Groesse")
D_Kursiv = FF_GetControl("Textlink","D_Kursiv")
D_Fett = FF_GetControl("Textlink","D_Fett")
End Sub
'-------------------------------------------------------------------------
Sub HTML
if D_Fett = 1 then HTML_Code = ""
if D_Kursiv = 1 then HTML_Code = HTML_Code & ""
HTML_Code = HTML_Code & "" & _
"" & text_Text & ""
if D_Kursiv = 1 then HTML_Code = HTML_Code & ""
if D_Fett = 1 then HTML_Code = HTML_Code & ""
End Sub
'-------------------------------------------------------------------------