UInt
Mitglied
Hallo zusammen,
ich habe ein TabControl auf CFormView. Beim Aufrufen des Programms wird nur TabControl gezeigt. Die Tabs werden danach einzeln per Knopfdruck eingefügt.
Ich möchte, dass meinTabControl, Tabs und deren Inhalt, der ein Dialog ist, sich an der MainFramegröße anpasst, wenn sie verändert wird.
Ich habe es geschafft die Größe von TabControl anpassen zu können. Leider klappt es nicht mit der Größe von Tabinhalt (Dialog), der bei der Initialisierung noch gar nicht da ist.
Hier ist der Code von TabControlgröße:
FormView.cpp
1. Soweit ich verstehe soll ich die Größe von Inhaltsdialog in OnSize in FormView.cpp ändern und die Controllsgröße, die auf dem Dialog sind, in OnSize in Inhaltsdialog.cpp.
2. Ich nehme an, dass ich in FormView.cpp zu erst überprüfen soll, ob mein Inhaltsdialog erzeugt wurde, bevor ich mit der Größenänderung anfange. Leider fällt mir nichts ein, wie ich es machen kann.
ich habe ein TabControl auf CFormView. Beim Aufrufen des Programms wird nur TabControl gezeigt. Die Tabs werden danach einzeln per Knopfdruck eingefügt.
Ich möchte, dass meinTabControl, Tabs und deren Inhalt, der ein Dialog ist, sich an der MainFramegröße anpasst, wenn sie verändert wird.
Ich habe es geschafft die Größe von TabControl anpassen zu können. Leider klappt es nicht mit der Größe von Tabinhalt (Dialog), der bei der Initialisierung noch gar nicht da ist.

Hier ist der Code von TabControlgröße:
FormView.cpp
Code:
void CFormViewView::OnSize(UINT nType, int cx, int cy)
{
CFormView::OnSize(nType, cx, cy);
// Tab control
if(m_TabCtrl.m_hWnd == NULL)
return;
int MinTabWidth = 1000;
int MinTabHeight = 500;
RECT lpRect;
// Clientgröße bekommen
GetClientRect(&lpRect);
// Die Tabgröße berechnen, um in den Client reinzupassen
m_TabCtrl.AdjustRect(FALSE, &lpRect);
// Die minimale Tabgröße beibehalten
if(lpRect.right < MinTabWidth)
lpRect.right = MinTabWidth;
if(lpRect.bottom < MinTabHeight)
lpRect.bottom = MinTabHeight;
// Tabgröße ändern
m_TabCtrl1.MoveWindow(&lpRect, TRUE);
}
2. Ich nehme an, dass ich in FormView.cpp zu erst überprüfen soll, ob mein Inhaltsdialog erzeugt wurde, bevor ich mit der Größenänderung anfange. Leider fällt mir nichts ein, wie ich es machen kann.
