meta data for this page
Dies ist eine alte Version des Dokuments!
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 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 = "<b>"
if D_Kursiv = 1 then HTML_Code = HTML_Code & "<i>"
HTML_Code = HTML_Code & "<font size=" & chr(148) & D_Groesse & chr(148) & ">" & _
"<a href=" & text_Link & " >" & text_Text & "</a>"
if D_Kursiv = 1 then HTML_Code = HTML_Code & "</i>"
if D_Fett = 1 then HTML_Code = HTML_Code & "</b>"
End Sub '-------------------------------------------------------------------------