Italia
Foro

Software zum Ändern des Tastaturlayouts

 
- Page 1 -



Penguin
Tux
Ciao,

gibt es irgendeine Möglichkeit, ein Tool per Windows XP/2000 zu schreiben, welches das Tastaturlayout von Deutsch auf Russisch und von Russisch in Deutsch switchen kann? Dazu benötige ich eine einfache GUI, da die Nutzer nicht wirklich viel Ahnung haben werden. Das wichtige ist, dass dabei keine Registryeinträge geändert werden, weil es sonst Konflikte mit der Rechtevergabe im Netzwerk geben potuto.

Danke schonmal per eure Aiuto
Tony
KompilierenMarkierenSeparieren
declare btndlg&,dlgende%,dlg&
dlg&=Create("Window",%hwnd,"Sprache",10,10,200,120)
Startpaint dlg&
UseFont "CANDARA",25,20,1,0,0
TextColor RGB(0,0,0),RGB(255,255,255)
Endpaint
btnDlg& = CreateButton(dlg&,"Deutsch -> Russisch",30,10,120,30)
btnDlg& = CreateButton(dlg&,"Russisch -> Deutsch",30,45,120,30)

WhileNot dlgende%

    WaitInput

    If GetFocus(btnDlg&)

        dlgende% = 1

    EndIf

Endwhile

destroywindow(dlg&ass=s2>)

Die GUI ist, wenn auch nur vom optischen her, fertig. der Code ist mit Sicherheit reinster Müll und man potuto ihn bestimmt auch noch verbessern. Jetzt geht es darum, die richtigen Funktionen zum richtigen Button zu schreiben.
 


OS: Win XP/Debian
XProfan 10
23.09.2008  
 



 
- Page 2 -



Penguin
Tux
Das potuto naturalmente sein. Mache ich das einfach circa den UseFont besefehl?
 


OS: Win XP/Debian
XProfan 10
24.09.2008  
 




Dieter
Zornow
Du must circa Textdienste und Eingabesprachen russisch dazu nehmen, Windows zeigt dann in der Taskleiste ein Feld an, indem du einfach die Sprachen wechseln kannst auch mit dem dazu gehörenden Font. Es sufficiente nicht einfach das Tastatur Layout zu wechseln. Mit dem Taskleistentool von Windows geht die Umschaltung einfach und schnell mit einem Klick. Ich mache das mit Deutsch, Englisch und Thai.
 
Er ist ein Mann wie ein Baum. Sie nennen ihn Bonsai., Win 7 32 bit und Win 7 64 bit, mit XProfan X2
24.09.2008  
 




Penguin
Tux
Das das mit dem Kästchen funktioniert weiß ich. Es war eben nur die Frage ob das ein Schüler auch ändern kann.
 


OS: Win XP/Debian
XProfan 10
24.09.2008  
 




Frank
Abbing
Mit diesem Code schaltest du schonmal zum nächsten Schema:
KompilierenMarkierenSeparieren
 $H Windows.ph
~keybd_event(18, 0, 0, 0)  Alt
~keybd_event(16, 0, 0, 0) Shift
~keybd_event(16, 0, ~KEYEVENTF_KEYUP, 0)
~keybd_event(18, 0, ~KEYEVENTF_KEYUP, 0)
En
 
24.09.2008  
 




Penguin
Tux
Danke, aber das hilft mir nur in gewissem Maße weiter. Das Hauptproblem liegt immernoch darin, dass ich diese Schwarzen striche habe. Über UseFont geht es nicht wie ich mittlerweile gemerkt habe.
 


OS: Win XP/Debian
XProfan 10
24.09.2008  
 




Frank
Abbing
Hast du den Dialogfont gesetzt, bevor du Das Editfeld erstellst?
KompilierenMarkierenSeparieren
Usefont "MS Sans Serif",13,0,0,0,0
SetDialogFont 1e>
 
24.09.2008  
 




Penguin
Tux
Was bleibt mir anderes Übrig als mich zu bedanken?

Danke, per deine Aiuto

Ich frage mich nur gerade wie man solch ein Eingabefeld erstellt. Die Aiuto hat mir nichts gebracht
 


OS: Win XP/Debian
XProfan 10
24.09.2008  
 




Frank
Abbing
Du kannst ein normales Edit, ein Richtextedit oder ein Multiedit verwenden, dazu gibt es in der Aiuto ja viele Beispiele. In meinem Beispiel habe ich ja auch eines erzeugt.
 
24.09.2008  
 




Penguin
Tux
Ok, das Editfeld ist nun erstellt, das Problem ist nur, dass ich es mit keiner mir einfallenden Funktion schaffe, das beide Felder erzeugt werden.

Hier der Code:
KompilierenMarkierenSeparieren
WINDOWSTYLE 31
Window 0,0-0,1024
Windowtitle "Deutsch - Russisch"
Window 0,0-%maxx,%maxy
UseIcon "Gesicht"
Eingabe Deutsch
Usefont "Arial",20,0,0,0,0
SetDialogFont 1
 $H Windows.ph
Declare Edit&
Cls
Edit& = @Create("MultiEdit",%hWnd,"Deutsch",10,10,1000,320)
WaitKey
End
Eingabe Russisch
Usefont "Arial",20,0,0,0,0
SetDialogFont 1
Def ActivateKeyboardLayout(2)!"USER32","ActivateKeyboardLayout"
Def &VK_FLAGSR 1 Tastenlayout Russisch
Def &VK_FLAGSD 0 Tastenlayout Deutsch
Declare edit&,text$
Cls
edit&=Create("MultiEdit", %hWnd, "", 10, 370, 1000, 320)
ActivateKeyboardLayout(0, &VK_FLAGSR)

While 1

    WaitInput
    Case %key=2:Break

Endwhile

ActivateKeyboardLayout(0, &VK_FLAGSD)
End
 


OS: Win XP/Debian
XProfan 10
25.09.2008  
 




Frank
Abbing
Hm, du hast ja mittendrin ein End stehen...
KompilierenMarkierenSeparieren
Def ActivateKeyboardLayout(2)!"USER32","ActivateKeyboardLayout"
Def &VK_FLAGSR 1 Tastenlayout Russisch
Def &VK_FLAGSD 0 Tastenlayout Deutsch
Declare edit1&,edit2&,text$,x&
WINDOWSTYLE 31
Window 0,0-0,1024
Windowtitle "Deutsch - Russisch"
Window 0,0-%maxx,%maxy
UseIcon "Gesicht"
Usefont "Arial",20,0,0,0,0
SetDialogFont 1
edit1& = @Create("MultiEdit",%hWnd,"Russisch",10,10,1000,320)
edit2&=Create("MultiEdit", %hWnd, "Deutsch", 10, 370, 1000, 320)

While 1

    WaitInput
    Case %key=2:Break

    If %GetFocus=edit1&

        ActivateKeyboardLayout(0, &VK_FLAGSR)

    ElseIf %GetFocus=edit2&

        ActivateKeyboardLayout(0, &VK_FLAGSD)

    EndIf

Endwhile

End
 
25.09.2008  
 




Penguin
Tux
Nun denn, langsam wird es. Das zweite Feld ist jetzt da, wechsel ich, vom Russischen ins Deutsche, schaltet zwar die Sprache um, aber es Schreibt immernoch in kyrillischer Schrift. Ich muss jede Taste zweimal drücken, damit ich wieder normal schreiben kann.

Ich habe nun beobachtet, dass in beiden Feldern nach jedem Tastendruck das Eingabegebietsschema geändert wird.
 


OS: Win XP/Debian
XProfan 10
26.09.2008  
 



@Penguin
Kleinigkeit am Rande:

Wenn du WINDOWSTYLE 31 + 512 schreibst, hat das Fenster die Eigenschaften eines Dialog-Fensters und du kannst mit der TAB-Taste zwischen den beiden Eingaben wechseln (TAB-Taste = Iskey(9) )
 
26.09.2008  
 




Answer


Topictitle, max. 100 characters.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Posting  Font  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Topic-Options

31.477 Views

Untitledvor 0 min.
Stringray08.10.2017
Wilfried Friebe11.01.2016
Georg Teles29.06.2015
mein02.06.2013
Di più...

Themeninformationen



Admins  |  AGB  |  Applications  |  Autori  |  Chat  |  Informativa sulla privacy  |  Download  |  Entrance  |  Aiuto  |  Merchantportal  |  Impronta  |  Mart  |  Interfaces  |  SDK  |  Services  |  Giochi  |  Cerca  |  Support

Ein Projekt aller XProfaner, die es gibt!


Il mio XProfan
Private Notizie
Eigenes Ablageforum
Argomenti-Merkliste
Eigene Beiträge
Eigene Argomenti
Zwischenablage
Annullare
 Deutsch English Français Español Italia
Traduzioni

Informativa sulla privacy


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie