Sign in to follow this  
Followers 0
davidkim

how convert MFC to autoit code?

1 post in this topic

#1 ·  Posted (edited)

#include <windows.h>

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
HINSTANCE g_hInst;
HWND hWndMain;
LPCTSTR lpszClass=TEXT("ImeMsg");

int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance
       ,LPSTR lpszCmdParam,int nCmdShow)
{
     HWND hWnd;
     MSG Message;
     WNDCLASS WndClass;
     g_hInst=hInstance;
    
     WndClass.cbClsExtra=0;
     WndClass.cbWndExtra=0;
     WndClass.hbrBackground=(HBRUSH)(COLOR_WINDOW+1);
     WndClass.hCursor=LoadCursor(NULL,IDC_ARROW);
     WndClass.hIcon=LoadIcon(NULL,IDI_APPLICATION);
     WndClass.hInstance=hInstance;
     WndClass.lpfnWndProc=(WNDPROC)WndProc;
     WndClass.lpszClassName=lpszClass;
     WndClass.lpszMenuName=NULL;
     WndClass.style=CS_HREDRAW | CS_VREDRAW;
     RegisterClass(&WndClass);

     hWnd=CreateWindow(lpszClass,lpszClass,WS_OVERLAPPEDWINDOW,
          CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,
          NULL,(HMENU)NULL,hInstance,NULL);
     ShowWindow(hWnd,nCmdShow);
     hWndMain=hWnd;
    
     while(GetMessage(&Message,0,0,0)) {
          TranslateMessage(&Message);
          DispatchMessage(&Message);
     }
     return (int)Message.wParam;
}

HWND hList;
void AddString(char *str)
{
     int count;

     SendMessage(hList,LB_ADDSTRING,0,(LPARAM)str);
     count=(int)SendMessage(hList,LB_GETCOUNT,0,0);
     SendMessage(hList,LB_SETCURSEL,(WPARAM)count-1,0);
}

LRESULT CALLBACK WndProc(HWND hWnd,UINT iMessage,WPARAM wParam,LPARAM lParam)
{
     HDC hdc;
     PAINTSTRUCT ps;
     char str[256];
     char szChar[128];
     char szTmp[256];
     char Mes[]="입력하기 전에 왼쪽 버튼을 클릭하여 포커스를 주고 목록을 지울 때는 오른쪽 버튼 클릭";

     switch(iMessage) {
     case WM_CREATE:
          hList=CreateWindow("listbox",NULL,WS_CHILD | WS_VISIBLE | WS_BORDER |
              WS_VSCROLL | WS_HSCROLL | LBS_NOTIFY | LBS_NOINTEGRALHEIGHT,
              0,0,600,600,hWnd,(HMENU)0,g_hInst,NULL);
          return 0;
     case WM_SIZE:
          MoveWindow(hList,0,30,LOWORD(lParam),HIWORD(lParam)-30,TRUE);
          return 0;
     case WM_PAINT:
          hdc=BeginPaint(hWnd, &ps);
          TextOut(hdc,5,5,Mes,lstrlen(Mes));
          EndPaint(hWnd, &ps);
          return 0;
     case WM_LBUTTONDOWN:
          SetFocus(hWnd);
          return 0;
     case WM_RBUTTONDOWN:
          SendMessage(hList,LB_RESETCONTENT,0,0);
          return 0;
     case WM_DESTROY:
          PostQuitMessage(0);
          return 0;
     case WM_IME_SETCONTEXT:
          if (wParam == TRUE) {
              lstrcpy(szTmp, "활성");
          } else {
              lstrcpy(szTmp, "비활성");
          }
          wsprintf(str, "WM_IME_SETCONTEXT %s lParam=%x",szTmp,lParam);
          AddString(str);
          break;
     case WM_IME_NOTIFY:
          lstrcpy(szTmp,"");
          if (wParam == IMN_CHANGECANDIDATE) lstrcpy(szTmp,"IMN_CHANGECANDIDATE");
          if (wParam == IMN_CLOSECANDIDATE) lstrcpy(szTmp,"IMN_CLOSECANDIDATE");
          if (wParam == IMN_GUIDELINE) lstrcpy(szTmp,"IMN_GUIDELINE");
          if (wParam == IMN_OPENCANDIDATE) lstrcpy(szTmp,"IMN_OPENCANDIDATE");
          if (wParam == IMN_OPENSTATUSWINDOW) lstrcpy(szTmp,"IMN_OPENSTATUSWINDOW");
          if (wParam == IMN_SETCANDIDATEPOS) lstrcpy(szTmp,"IMN_SETCANDIDATEPOS");
          if (wParam == IMN_SETCOMPOSITIONFONT) lstrcpy(szTmp,"IMN_SETCOMPOSITIONFONT");
          if (wParam == IMN_SETCOMPOSITIONWINDOW) lstrcpy(szTmp,"IMN_SETCOMPOSITIONWINDOW");
          if (wParam == IMN_SETCONVERSIONMODE) lstrcpy(szTmp,"IMN_SETCONVERSIONMODE");
          if (wParam == IMN_SETOPENSTATUS) lstrcpy(szTmp,"IMN_SETOPENSTATUS");
          if (wParam == IMN_SETSENTENCEMODE) lstrcpy(szTmp,"IMN_SETSENTENCEMODE");
          if (wParam == IMN_SETSTATUSWINDOWPOS) lstrcpy(szTmp,"IMN_SETSTATUSWINDOWPOS");

          wsprintf(str, "WM_IME_NOTIFY 명령=%s, lParam=%x",szTmp,lParam);
          AddString(str);
          break;
     case WM_IME_STARTCOMPOSITION:
          AddString("WM_IME_STARTCOMPOSITION");
          break;
     case WM_IME_ENDCOMPOSITION:
          AddString("WM_IME_ENDCOMPOSITION");
          break;
  [color=#ff0000]   [b]case WM_IME_COMPOSITION[/b]:[/color]
          szChar[0]=HIBYTE(LOWORD(wParam));
          szChar[1]=LOBYTE(LOWORD(wParam));
          szChar[2]=0;
          if (lParam | GCS_COMPATTR) {
              lstrcpy(szTmp,"GCS_COMPATTR | ");
          } else {
              lstrcpy(szTmp,"");
          }
          if (lParam & GCS_COMPCLAUSE) lstrcat(szTmp,"GCS_COMPCLAUSE | ");
          if (lParam & GCS_COMPREADSTR) lstrcat(szTmp,"GCS_COMPREADSTR | ");
          if (lParam & GCS_COMPREADATTR) lstrcat(szTmp,"GCS_COMPREADATTR | ");
          if (lParam & GCS_COMPREADCLAUSE) lstrcat(szTmp,"GCS_COMPREADCLAUSE | ");
          if (lParam & GCS_COMPSTR) lstrcat(szTmp,"GCS_COMPSTR | ");
          if (lParam & GCS_CURSORPOS) lstrcat(szTmp,"GCS_CURSORPOS | ");
          if (lParam & GCS_DELTASTART) lstrcat(szTmp,"GCS_DELTASTART | ");
          if (lParam & GCS_RESULTCLAUSE) lstrcat(szTmp,"GCS_RESULTCLAUSE | ");
          if (lParam & GCS_RESULTREADCLAUSE) lstrcat(szTmp,"GCS_RESULTREADCLAUSE | ");
          if (lParam & GCS_RESULTREADSTR) lstrcat(szTmp,"GCS_RESULTREADSTR | ");
    [color=#ff0000] [b]  if (lParam & GCS_RESULTSTR) lstrcat(szTmp,"GCS_RESULTSTR | ");[/b][/color]
          if (lParam & CS_INSERTCHAR) lstrcat(szTmp,"CS_INSERTCHAR | ");
          if (lParam & CS_NOMOVECARET) lstrcat(szTmp,"CS_NOMOVECARET | ");

          if (lstrlen(szTmp) != 0) szTmp[lstrlen(szTmp)-2]=0;
          wsprintf(str, "WM_IME_COMPOSITION 문자=%s,lParam=%s",szChar,szTmp);
          AddString(str);
          break;
          //return 0;
     case WM_IME_CHAR:
          if (IsDBCSLeadByte((BYTE)(wParam >> 8))) {
              szChar[0]=HIBYTE(LOWORD(wParam));
              szChar[1]=LOBYTE(LOWORD(wParam));
              szChar[2]=0;
          } else {
              szChar[0]=(BYTE)wParam;
              szChar[1]=0;
          }
          wsprintf(str, "WM_IME_CHAR 문자=%s,lParam=%x",szChar,lParam);
          AddString(str);
         break;
          //return 0;
     case WM_IME_COMPOSITIONFULL:
          AddString("WM_IME_COMPOSITIONFULL");
          break;
     case WM_IME_CONTROL:
          AddString("WM_IME_CONTROL");
          break;
     case WM_IME_KEYDOWN:
          AddString("WM_IME_KEYDOWN");
          break;
     case WM_IME_KEYUP:
          AddString("WM_IME_KEYUP");
          break;
     case WM_IME_SELECT:
          AddString("WM_IME_SELECT");
          break;
     case WM_CHAR:
          wsprintf(str, "WM_CHAR 문자=%c,lParam=%x",wParam,lParam);
          AddString(str);
          return 0;
     }
     return(DefWindowProc(hWnd,iMessage,wParam,lParam));
}

i am convert MFC code to Autoit

#include <guiconstantsex.au3>
#include <staticconstants.au3>
#include <windowsconstants.au3>
#include <guilistview.au3>
#include <constants.au3>
#include <guiconstants.au3>
#include <winapi.au3>
Opt("GUIOnEventMode", 1)
Global $new_id = 0
Global $whProc
Global Const $WM_IME_COMPOSITION = 0x010F
Global Const $WM_IME_NOTIFY = 0x0282
Global Const $GCS_RESULTSTR = 0x0800
Global Const $GCS_COMPSTR = 0x0008
Global Const $WM_IME_SELECT                 = 0x0285
Global Const $WM_IME_SETCONTEXT             = 0x0281
Global Const $WM_IME_STARTCOMPOSITION         = 0x010D
Global Const $WM_IME_ENDCOMPOSITION         = 0x010E
Global Const $WM_IME_CHAR                     = 0x0286
Global Const $WM_IME_COMPOSITIONFULL           = 0x0284
Global Const $WM_IME_CONTROL                   = 0x0283
Global Const $WM_IME_KEYDOWN                   = 0x0290
Global Const $WM_IME_KEYUP                   = 0x0291
Global $Form1
Global $hHook, $hStub_KeyProc, $buffer = ""
$Form1 = GUICreate("200 manuscript form", 623, 449, -1, -1)
GUISetBkColor(0xffffff)
GUISetState(@SW_SHOW)

$line = 0xfdd5d5
$wongo_witdh = 520
$cel = $wongo_witdh / 20
$wongo_step = 34
$wongo_gap = 26
Dim $cel_s[201]
Global $ncel = 0
; // line --------
GUICtrlCreateLabel("", 56, 46, $wongo_witdh, 1)
GUICtrlSetBkColor(-1, $line)
For $y = 0 To 9
$top = ($y * $wongo_step)
GUICtrlCreateLabel("", 56, 54 + $top, $wongo_witdh, 1)
GUICtrlSetBkColor(-1, $line)
GUICtrlCreateLabel("", 56, 54 + $top + $wongo_gap, $wongo_witdh, 1)
GUICtrlSetBkColor(-1, $line)
Next
GUICtrlCreateLabel("", 56, 54 + $top + $wongo_gap + 8, $wongo_witdh, 1)
GUICtrlSetBkColor(-1, $line)

; // line  |
GUICtrlCreateLabel("", 56, 46, 1, 46 + (8 * $wongo_step) + $wongo_gap + 4)
GUICtrlSetBkColor(-1, $line)
GUICtrlCreateLabel("", 56 + $wongo_witdh, 46, 1, 46 + (8 * $wongo_step) + $wongo_gap + 4)
GUICtrlSetBkColor(-1, $line)
;// cel | | |
For $y = 0 To 9
$top = ($y * $wongo_step)
For $ci = $cel To $wongo_witdh Step $cel
  GUICtrlCreateLabel("", 56 + $ci, 54 + $top, 1, $wongo_gap)
  GUICtrlSetBkColor(-1, $line)
Next
Next
;// input blank area
Local $ct = 0
For $y = 0 To 9
$top = ($y * $wongo_step)
For $ci = $cel To $wongo_witdh Step $cel
  $ct += 1
  $cel_s[$ct] = GUICtrlCreateInput('', ((56 + $ci) - $cel) + 2, 54 + $top + 2, $cel - 2, $wongo_gap - 2, -1, 0)
  GUICtrlSetBkColor(-1,0xf000ff)
  GUICtrlSetOnEvent(-1, '_cel')
  GUICtrlSetLimit(-1, 1)
  GUICtrlSetFont(-1, 13, 800, 0, "MS Sans Serif")
Next
Next
GUISetOnEvent(-3, '_exit')

$whHook = DllCallbackRegister('_WinProc', 'ptr', 'hwnd;uint;wparam;lparam');LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);
$wpHook = DllCallbackGetPtr($whHook)
;~ $hDll = DllCallbackRegister('_WinProc', 'ptr', 'hwnd;uint;wparam;lparam')
;~ $pDll = DllCallbackGetPtr($hDll)
$whProc = _WinAPI_SetWindowLong(WinGetHandle($Form1), $GWL_WNDPROC, $wpHook)
#cs  ==> set korean key
If Not Get_Hangul() Then Too() ; Korean Key set  ==> http://cafe.naver.com/autoitscript/512
#ce
GUICtrlSetState($cel_s[2], $gui_focus)

Func _WinProc($hWnd, $iMsg, $wParam, $lParam)
;~   Local $Res = _WinAPI_CallWindowProc($whProc, $hWnd, $iMsg, $wParam, $lParam)
Local $hDC, $hSv, $oldMsg
ConsoleWrite('_winProc $lParam: ' & $lParam/255 & @CRLF)
Switch $iMsg
  Case $WM_CREATE
             ConsoleWrite('WM_CREATE:' & @CRLF)
    Return 0
  Case $WM_CHAR
   ConsoleWrite('  case WM_CHAR: ' & @CRLF)
  Case $WM_IME_NOTIFY
   Local $szTmp = ''

;~         If ($wParam == $IMN_CHANGECANDIDATE) Then
;~      $szTmp= "IMN_CHANGECANDIDATE"
;~         EndIf
;~         If ($wParam == $IMN_CLOSECANDIDATE) Then
;~      $szTmp = "IMN_CLOSECANDIDATE"
;~         EndIf
;~         If ($wParam == $IMN_GUIDELINE) Then
;~      $szTmp = "IMN_GUIDELINE"
;~         EndIf
;~         If ($wParam == $IMN_OPENCANDIDATE) Then
;~      $szTmp = "IMN_OPENCANDIDATE"
;~         EndIf
;~         If ($wParam == $IMN_OPENSTATUSWINDOW) Then
;~      $szTmp = "IMN_OPENSTATUSWINDOW"
;~         EndIf
;~         If ($wParam == $IMN_SETCANDIDATEPOS) Then
;~        $szTmp = "IMN_SETCANDIDATEPOS"
;~         EndIf
;~         If ($wParam == $IMN_SETCOMPOSITIONFONT) Then
;~     $szTmp = "IMN_SETCOMPOSITIONFONT"
;~         EndIf
;~         If ($wParam == $IMN_SETCOMPOSITIONWINDOW) Then
;~      $szTmp = "IMN_SETCOMPOSITIONWINDOW"
;~         EndIf
;~         If ($wParam == $IMN_SETCONVERSIONMODE) Then
;~      $szTmp = "IMN_SETCONVERSIONMODE"
;~         EndIf
;~         If ($wParam == $IMN_SETOPENSTATUS) Then
;~      $szTmp = "IMN_SETOPENSTATUS"
;~         EndIf
;~         If ($wParam == $IMN_SETSENTENCEMODE) Then
;~       $szTmp = "IMN_SETSENTENCEMODE"
;~         EndIf
;~         If ($wParam == $IMN_SETSTATUSWINDOWPOS) Then
;~      $szTmp = "IMN_SETSTATUSWINDOWPOS"
;~         EndIf
;~
;~        ConsoleWrite("WM_IME_NOTIFY 명령=%s, lParam=%x" & $szTmp & '-' & $lParam)
   ConsoleWrite('WM_IME_NOTIFY: ' & $wParam & @CRLF)
  Case $WM_IME_COMPOSITION
   ConsoleWrite('$WM_IME_COMPOSITION: ' & $lParam & @CRLF)
if ($lParam And $GCS_RESULTSTR) Then
;~   lstrcat(szTmp,"GCS_RESULTSTR | ");
ConsoleWrite('GCS_RESULTSTR:' & @CRLF)
EndIf
   If $lParam Or $GCS_COMPSTR Then
    ConsoleWrite('now char input...' & @CRLF)
   EndIf
   If $lParam Or $GCS_RESULTSTR Then
    ConsoleWrite('input ednd' & @CRLF)
   EndIf
     case $WM_SIZE
;~         MoveWindow(hList,0,30,LOWORD(lParam),HIWORD(lParam)-30,TRUE);
ConsoleWrite('$WM_SIZE: ' & $WM_SIZE & @CRLF)
          return 0;
     case $WM_LBUTTONDOWN
;~         SetFocus(hWnd);
ConsoleWrite('$WM_LBUTTONDOWN: ' & $WM_LBUTTONDOWN & @CRLF)
          return 0;
     case $WM_RBUTTONDOWN
;~         SendMessage(hList,LB_RESETCONTENT,0,0);
ConsoleWrite('$WM_RBUTTONDOWN: ' & $WM_RBUTTONDOWN & @CRLF)
          return 0;
     case $WM_DESTROY
;~         PostQuitMessage(0);
ConsoleWrite('$WM_DESTROY: ' & $WM_DESTROY & @CRLF)
          Exit
          return 0;
     case $WM_IME_SETCONTEXT ; 반응
ConsoleWrite('$WM_IME_SETCONTEXT: ' & $WM_IME_SETCONTEXT & @CRLF)
;~         if (wParam == TRUE) {
;~             lstrcpy(szTmp, "활성");
;~         } else {
;~             lstrcpy(szTmp, "비활성");
;~         }
;~         wsprintf(str, "WM_IME_SETCONTEXT %s lParam=%x",szTmp,lParam);
;~         AddString(str);
;~         break;
;~    case WM_IME_NOTIFY:
;~         lstrcpy(szTmp,"");
;~         if (wParam == IMN_CHANGECANDIDATE) lstrcpy(szTmp,"IMN_CHANGECANDIDATE");
;~         if (wParam == IMN_CLOSECANDIDATE) lstrcpy(szTmp,"IMN_CLOSECANDIDATE");
;~         if (wParam == IMN_GUIDELINE) lstrcpy(szTmp,"IMN_GUIDELINE");
;~         if (wParam == IMN_OPENCANDIDATE) lstrcpy(szTmp,"IMN_OPENCANDIDATE");
;~         if (wParam == IMN_OPENSTATUSWINDOW) lstrcpy(szTmp,"IMN_OPENSTATUSWINDOW");
;~         if (wParam == IMN_SETCANDIDATEPOS) lstrcpy(szTmp,"IMN_SETCANDIDATEPOS");
;~         if (wParam == IMN_SETCOMPOSITIONFONT) lstrcpy(szTmp,"IMN_SETCOMPOSITIONFONT");
;~         if (wParam == IMN_SETCOMPOSITIONWINDOW) lstrcpy(szTmp,"IMN_SETCOMPOSITIONWINDOW");
;~         if (wParam == IMN_SETCONVERSIONMODE) lstrcpy(szTmp,"IMN_SETCONVERSIONMODE");
;~         if (wParam == IMN_SETOPENSTATUS) lstrcpy(szTmp,"IMN_SETOPENSTATUS");
;~         if (wParam == IMN_SETSENTENCEMODE) lstrcpy(szTmp,"IMN_SETSENTENCEMODE");
;~         if (wParam == IMN_SETSTATUSWINDOWPOS) lstrcpy(szTmp,"IMN_SETSTATUSWINDOWPOS");
;~
;~         wsprintf(str, "WM_IME_NOTIFY 명령=%s, lParam=%x",szTmp,lParam);
;~         AddString(str);
;~         break;
     case $WM_IME_STARTCOMPOSITION
ConsoleWrite('$WM_IME_STARTCOMPOSITION: ' & $WM_IME_STARTCOMPOSITION & @CRLF)
;~         AddString("WM_IME_STARTCOMPOSITION");
;~         break;
     case $WM_IME_ENDCOMPOSITION
ConsoleWrite('$WM_IME_ENDCOMPOSITION: ' & $WM_IME_ENDCOMPOSITION & @CRLF)
;~         AddString("WM_IME_ENDCOMPOSITION");
;~         break;
;~    case $WM_IME_COMPOSITION
;~ ConsoleWrite('$WM_IME_COMPOSITION: ' & $WM_IME_COMPOSITION & @CRLF)
;~         szChar[0]=HIBYTE(LOWORD(wParam));
;~         szChar[1]=LOBYTE(LOWORD(wParam));
;~         szChar[2]=0;
;~         if (lParam | GCS_COMPATTR) {
;~             lstrcpy(szTmp,"GCS_COMPATTR | ");
;~         } else {
;~             lstrcpy(szTmp,"");
;~         }
;~         if (lParam & GCS_COMPCLAUSE) lstrcat(szTmp,"GCS_COMPCLAUSE | ");
;~         if (lParam & GCS_COMPREADSTR) lstrcat(szTmp,"GCS_COMPREADSTR | ");
;~         if (lParam & GCS_COMPREADATTR) lstrcat(szTmp,"GCS_COMPREADATTR | ");
;~         if (lParam & GCS_COMPREADCLAUSE) lstrcat(szTmp,"GCS_COMPREADCLAUSE | ");
;~         if (lParam & GCS_COMPSTR) lstrcat(szTmp,"GCS_COMPSTR | ");
;~         if (lParam & GCS_CURSORPOS) lstrcat(szTmp,"GCS_CURSORPOS | ");
;~         if (lParam & GCS_DELTASTART) lstrcat(szTmp,"GCS_DELTASTART | ");
;~         if (lParam & GCS_RESULTCLAUSE) lstrcat(szTmp,"GCS_RESULTCLAUSE | ");
;~         if (lParam & GCS_RESULTREADCLAUSE) lstrcat(szTmp,"GCS_RESULTREADCLAUSE | ");
;~         if (lParam & GCS_RESULTREADSTR) lstrcat(szTmp,"GCS_RESULTREADSTR | ");
;~         if (lParam & GCS_RESULTSTR) lstrcat(szTmp,"GCS_RESULTSTR | ");
;~         if (lParam & CS_INSERTCHAR) lstrcat(szTmp,"CS_INSERTCHAR | ");
;~         if (lParam & CS_NOMOVECARET) lstrcat(szTmp,"CS_NOMOVECARET | ");
;~
;~         if (lstrlen(szTmp) != 0) szTmp[lstrlen(szTmp)-2]=0;
;~         wsprintf(str, "WM_IME_COMPOSITION 문자=%s,lParam=%s",szChar,szTmp);
;~         AddString(str);
;~         break;
;~         //return 0;
     case $WM_IME_CHAR
ConsoleWrite('$WM_IME_CHAR: ' & $WM_IME_CHAR & @CRLF)
;~         if (IsDBCSLeadByte((BYTE)(wParam >> 8))) {
;~             szChar[0]=HIBYTE(LOWORD(wParam));
;~             szChar[1]=LOBYTE(LOWORD(wParam));
;~             szChar[2]=0;
;~         } else {
;~             szChar[0]=(BYTE)wParam;
;~             szChar[1]=0;
;~         }
;~         wsprintf(str, "WM_IME_CHAR 문자=%s,lParam=%x",szChar,lParam);
;~         AddString(str);
;~         break;
;~         //return 0;
     case $WM_IME_COMPOSITIONFULL
ConsoleWrite('$WM_IME_COMPOSITIONFULL: ' & $WM_IME_COMPOSITIONFULL & @CRLF)
;~         AddString("WM_IME_COMPOSITIONFULL");
;~         break;
     case $WM_IME_CONTROL
ConsoleWrite('$WM_IME_CONTROL: ' & $WM_IME_CONTROL & @CRLF)
;~         AddString("WM_IME_CONTROL");
;~         break;
     case $WM_IME_KEYDOWN
ConsoleWrite('$WM_IME_KEYDOWN: ' & $WM_IME_KEYDOWN & @CRLF)
;~         AddString("WM_IME_KEYDOWN");
;~         break;
     case $WM_IME_KEYUP
ConsoleWrite('$WM_IME_KEYUP: ' & $WM_IME_KEYUP & @CRLF)
;~         AddString("WM_IME_KEYUP");
;~         break;
     case $WM_IME_SELECT
ConsoleWrite('$WM_IME_SELECT: ' & $WM_IME_SELECT & @CRLF)
;~         AddString("WM_IME_SELECT");
;~         break;
;~    case WM_CHAR:
;~         wsprintf(str, "WM_CHAR 문자=%c,lParam=%x",wParam,lParam);
;~         AddString(str);
;~         return 0;
;~    }
;~    return(DefWindowProc(hWnd,iMessage,wParam,lParam));
EndSwitch
;~  Return _WinAPI_CallWindowProc($whProc, $hWnd, $iMsg, $wParam, $lParam)
Return _WinAPI_DefWindowProc($hWnd, $iMsg, $wParam, $lParam)
EndFunc   ;==>_WinProc
Func OnAutoItExit()
_WinAPI_UnhookWindowsHookEx($hHook)
DllCallbackFree($hStub_KeyProc)
EndFunc   ;==>OnAutoItExit
Func _cel()
For $i = 1 To 200
  If $cel_s[$i] = @GUI_CtrlId Then
   ConsoleWrite('num: ' & $i & @CRLF)
   $ncel = $i
   ExitLoop
  EndIf
Next
EndFunc   ;==>_cel
Func _exit()
Exit
EndFunc   ;==>_exit

While 1
Sleep(300)
WEnd

not event $WM_IME_NOTIFY

not event $WM_IME_COMPOSITION

how converting this code? to Autoit3

Edited by Melba23
Added code tags

I interest am many quite in AutoitScript.From that is [http://cafe.naver.com/autoitscript[/color]] Korea of cafe(blog) to be operating, [size="2"][color="#ff00ff"]English cannot well[/size].Many help it requests.To read, it stands it thanks.

Share this post


Link to post
Share on other sites



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0