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

[WinAPI] zmiana rozmiaru kontrolki

Ostatnio zmodyfikowano 2012-08-16 15:11
Autor Wiadomość
Miras
Temat założony przez niniejszego użytkownika
[WinAPI] zmiana rozmiaru kontrolki
» 2012-08-16 12:36:39
Chce utworzyć program w którym kontrolka dopasuje się do rozmiaru okna, w pętli komunikatów umieściłem:
case WM_SIZE:
MessageBox( NULL, "Coś działa", "Test size", MB_ICONEXCLAMATION );
GetWindowRect(hwnd,&r);
MoveWindow(hText,0, 0,r.right-r.left,r.bottom-r.top,TRUE);
break;

przy zmianie wielkości okna wyświetla mi komunikat testowy lecz kontrolka pozostaje bez zmian.
P-62646
DejaVu
» 2012-08-16 12:54:34
Poczytaj:
http://msdn.microsoft.com/en-us/library/windows/desktop/ms632646(v=vs.85).aspx
http://msdn.microsoft.com/en-us/library/windows/desktop/ms633534(v=vs.85).aspx

/edit:
C/C++
void CWindowBase::setSize( const CRect & rect )
{
    m_wndRect = rect;
    if( !m_hWnd )
         return;
   
    ::SetWindowPos( m_hWnd, NULL, rect.getLeft(), rect.getTop(), m_wndRect.getWidth(), m_wndRect.getHeight(), SWP_NOZORDER );
}
Spróbuj SetWindowPos
P-62648
Miras
Temat założony przez niniejszego użytkownika
» 2012-08-16 15:11:37
zarówna MoveWindow jak i SetWindowPos działają elegancko wywoływane w WinMain a w pętli komunikatów nie dają żadnej reakcji

//edit
przeniosłem procedure tworzenia okna potomnego do petli komunikatow i dziala jak należy.
P-62666
« 1 »
  Strona 1 z 1