[ mladenvasic @ 20.05.2005. 08:25 ] @
Pozdrav svima. Moze li mi neko reci kako da u Visual C++ 7.0 u MFC aplikaciji pri promjeni velicine forme status bar text box-ovi i ostale kontrole promjene velicinu i poziciju odnosno kako da koristim Dock Control. Ako moze malo detaljniji opis.
HVALA ...
[ dragansm @ 24.05.2005. 07:04 ] @
Sto se tice dock kontrola, najjednostavnije je da koristis App wizard i da kazes da zelis da toolbar bude docking...
Programski to mozes da resis tako da u funkciji int CMainFrame::OnCreate(LPCREATESTRUCT lpCreateStruct) nakon kreiranja toolbara "kazes":
Code:
 
m_wndToolBar.EnableDocking(CBRS_ALIGN_ANY);
EnableDocking(CBRS_ALIGN_ANY);
DockControlBar(&m_wndToolBar);

Da bi pri promeni velicine forme, tj. dialog-box postavio velicine i pozicije kontrola (verovatno zelis da to bude na nacin kako se menja WEB forma u browser-u pri promeni velicine prozora), dodaj message handler OnSize za poruku WM_SIZE:
Code:

void CYourDlgBox::OnSize(UINT nType, int cx, int cy) 

Koriscenjem CWnd::GetDlgItem u OnSize mozes da dobijes pokazivac na tvoje kontrole. Npr.:
Code:

CEdit* edit = (CEdit*) GetDlgItem(IDC_EDIT_NAME);

Velicinu i polozaj kontrola menjas pozivom
Code:

edit->MoveWindow( int x, int y, int w, int h, BOOL bRepaint );

Na tebi je "samo" da vrednosti x, y, w i h povezes sa vrednostima cx i cy...
Pri kreiranju Dijaloga u Resource editoru moras da kazes da je "forma" Resizing.