Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[winApi][C++] Okienko checkbox

Ostatnio zmodyfikowano 2014-01-07 19:05
Autor Wiadomość
mikson
Temat założony przez niniejszego użytkownika
[winApi][C++] Okienko checkbox
» 2014-01-07 15:31:26
Witam.

Czytałem sobie poradnik o winApi i robię prosty programik, w którym mamy sobie checkbox, dwa pola tekstowe i przycisk. I przeczytałem tą lekcję sobie do momentu z odświeżaniem zaznaczenia checkboxa - sprawdziłem wszystko, ale nie działa. Gdzie popełniłem błąd?

Przesyłam tą końcówkę programu odpowiedzialną za to
C/C++
LRESULT CALLBACK WindowProcedure( HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam )
{
   
    int ID_CHECKBOX1 = GetDlgCtrlID( hCheckBox1 );
    BOOL bChecked =( IsDlgButtonChecked( hwnd, ID_CHECKBOX1 ) == BST_CHECKED );
   
    switch( message ) /* handle the messages */
    {
       
    case WM_DESTROY:
        PostQuitMessage( 0 ); /* send a WM_QUIT to the message queue */
        break;
       
       
    case WM_COMMAND:
       
        bChecked =( IsDlgButtonChecked( hwnd, ID_CHECKBOX1 ) == BST_CHECKED );
        break;
       
       
        default: /* for messages that we don't deal with */
        return DefWindowProc( hwnd, message, wParam, lParam );
       
       
    }
   
    return 0;
}

Z góry dziękuję za pomoc i pozdrawiam.


@@NA MARGINESIE: Jak ustawić, żeby nie dało się zmaksymalizować okna?
P-101507
Monika90
» 2014-01-07 17:26:22
Nie działa - czyli co? Zmienna bChecked jest lokalna w funkcji WindowProcedure - nie ma do niej dostepu z innych funkcji.

Jak ustawić, żeby nie dało się zmaksymalizować okna?
Tu masz listę styli okna http://msdn.microsoft.com​/en-us/library/windows/desktop​/ms632600%28v=vs.85%29.aspx - przestudiuj i wybierz sobie właściwy. WS_POPUPWINDOW bodajże...
P-101514
mikson
Temat założony przez niniejszego użytkownika
» 2014-01-07 17:54:26
Nir działa - okienko nadal sie nie zaznacza...
P-101520
Monika90
» 2014-01-07 17:55:29
A dałeś checkboksowi styl BS_AUTOCHECKBOX?
P-101521
mikson
Temat założony przez niniejszego użytkownika
Zamykam.
» 2014-01-07 19:05:22
Nie, nie dałem, bo nie wiedziałem, że trzeba. :D
Już działa, dzięki za pomoc, zamykam.

Co do maksymalizowania - chodziło o "WS_MINIMIZEBOX", ale i tak wielkie dzięki za linka.

Pozdrawiam.
P-101528
« 1 »
  Strona 1 z 1