Jump to content

how convert MFC to autoit code?


Recommended Posts

#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.

Link to comment
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
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...