Aktives Tab in einer Tab Control automatisch ändern?
-
Hallo Leute!
Ich ahbe ein Programm, was ankommende Daten übers Ethernet auswertet und auf verschiedene Tab - Unterdialog verteilt. Wenn ich jetzt einen neuen Tab dynamisch anfüge trägt er mir die Daten dort ein, aber der alte Tab bleibt noch aktiv?
Was kann ich machen? Ich benutze die DynTabCtrl von phlox81, Das ist ja eine Ableitung der Standardklasse. Also könnte das ja auch in der Standardklasse gehen. Kann mir jemand helfen?
Vielen Dank,
Ranger
-
CTabCtrl::SetCurSel?
-
Ja, hab ich auch gedacht, aber da passiert folgendes:
Er schaltet zwar den neuen Tab aktiv, zeigt darin aber den Dialog des anderen Tabs, das sehe ich an dem Inhalt der Datenliste.
Kurioserweise, ändert sich das, wenn man manuell die Tabs nochmal anwählt, da zeigt er dann den richtigen Inhalt zu jedem Tabdialog an.
Das sieht irgendwie so aus, als würde ein Bind oder ein Update Befehl in die hose gehen, die intern gerufen werden. Wenn ich aber wie gesagt zwischen den Tabs einmal manuell hin und her schalte geht es wieder.Danke soweit und viele Grüße
Ranger
-
Es reicht nicht aus, nur den neuen Tabreiter mit SetCurSel zu aktivieren,
Deinen vorherigen UnterDialog mußt Du in den Hintergrund bringen (verstecken).
Den neuen Unterdialog holst Du in den Vordergrund, da der neue Tabreiter
ja aktiv ist, realisierst Du es mit der internen Tabreiternr. (GetCurSel),
da ganze machst Du da, wo Du den neuen Tabreiter erstellst.Turmfalke
-
Wenn DynTabCtrl richtig geschrieben ist, sollte das auch bei SetCurSel() die Dialoge entsprechend getauscht werden
Gruß Matthias