Code : Tout sélectionner
; includes
#include <EditConstants.au3>
#include <GUIConstantsEx.au3>
#include <StaticConstants.au3>
#include <WindowsConstants.au3>
#include <KeybConv.au3>
$StrAzerty = "aAmMqQwWzZ;:,.!/?%*$&'-@+=<>[]{}"
$StrQwerty = "qQ,?aAzZwWmM;:!&§(_'èù)é+=./^$¨£"
; construction du GUI (avec Koda)
$Fazqwerty = GUICreate("QwerZyty", 633, 385, 192, 114)
$Etraduire = GUICtrlCreateEdit("", 136, 128, 481, 89)
GUICtrlSetData(-1, "")
$Btraduire = GUICtrlCreateButton("Traduire", 136, 336, 158, 33)
GUICtrlSetFont(-1, 14, 800, 0, "MS Sans Serif")
$LTitre = GUICtrlCreateLabel("AZERTY <=> QWERTY", 8, 8, 617, 33, $SS_CENTER)
GUICtrlSetFont(-1, 14, 800, 0, "MS Sans Serif")
$Lsource = GUICtrlCreateLabel("Caractères Sources", 8, 48, 123, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Lcible = GUICtrlCreateLabel("Caractères Cibles", 8, 88, 111, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Isource = GUICtrlCreateInput($StrAzerty, 136, 48, 481, 24)
GUICtrlSetFont(-1, 12, 800, 0, "Lucida Console")
$Icible = GUICtrlCreateInput($StrQwerty, 136, 80, 481, 24)
GUICtrlSetFont(-1, 12, 800, 0, "Lucida Console")
$Ltrad = GUICtrlCreateLabel("Texte à traduire", 8, 128, 97, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Ltraduit = GUICtrlCreateLabel("Texte traduit", 8, 232, 77, 20)
GUICtrlSetFont(-1, 10, 400, 0, "MS Sans Serif")
$Etraduit = GUICtrlCreateEdit("", 136, 232, 481, 89) ; en lecture seule
GUICtrlSetData(-1, "")
$Bquitter = GUICtrlCreateButton("Quitter", 460, 336, 158, 33, $WS_GROUP)
GUICtrlSetFont(-1, 14, 800, 0, "MS Sans Serif")
$BEffacer = GUICtrlCreateButton("Effacer", 298, 336, 158, 33, $WS_GROUP)
GUICtrlSetFont(-1, 14, 800, 0, "MS Sans Serif")
GUISetState(@SW_SHOW)
; boucle du GUI
While 1
  $nMsg = GUIGetMsg()
  Switch $nMsg
    ; fermeture fenêtre
    Case $GUI_EVENT_CLOSE
      Exit
      ; boutton quitter
    Case $Bquitter
      Exit
      ; boutton effacer
    Case $BEffacer
      GUICtrlSetData($Etraduit, "")
      GUICtrlSetData($Etraduire, "")
      ; boutton traduire
    Case $Btraduire
      $Azerty = GUICtrlRead($Isource)
      $Qwerty = GUICtrlRead($Icible)
      Select
        Case GUICtrlRead($Etraduire) <> ""
          $Traduction = _KeybConvert(GUICtrlRead($Etraduire), 1, $Azerty, $Qwerty)
          GUICtrlSetData($Etraduit, $Traduction)
        Case GUICtrlRead($Etraduit) <> ""
          $Traduction = _KeybConvert(GUICtrlRead($Etraduit), 2, $Azerty, $Qwerty)
          GUICtrlSetData($Etraduire, $Traduction)
      EndSelect
  EndSwitch
WEnd
; Fin du programme
Exit