Skocz do zawartości

Pożywka dla FAQa czyli Szatkus zadaje kolejne pytania


Law

Recommended Posts

TO jest jakby zrobienie wlasnej procedury do reakcji na zadzerzenia kontrolek. A robi się to mniewiecej tak.

WNDPROC OldEditProc;

// obsluga komunikatow dla Edita
LRESULT CALLBACK EditProc(HWND hWnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{
        switch (Msg)
        {
        case WM_KEYDOWN:
                switch(wParam)
                {
                case VK_RETURN:
                        MessageBox(NULL, "ble", "ble", 0);
                        break;

                }
                break;
        }
        return CallWindowProc(oldEditProc, hWnd, Msg, wParam, lParam);
}

//obsluga komunikatow dla okna glownego
CALLBACK LRESULT WndProc(...)
{
//...
  case WM_CREATE:
    HWND hEdit = CreateWindow("edit",...);
    OldEditProc = (WNDPROC) SetWindowLong(hEdit, GWL_WNDPROC, (LONG) EditProc);
    break;
//...
}

Jesli teraz nacisniesz ENTER w edicie to wyskoczy okienko MessageBox ;)
A zeby zamist okienka wykonalo ci nacisniecie guiziak to poprostu wysylasz komunikat klikniecia do buttona.
SendMessage(UchwytButtona, BM_CLICK, 0, 0);

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...