Frage bzg. Tab Control



  • Ich habe gerade ein Tab Control in meinem Dialog mit Hilfe des Resource Editors von VS2005 erstellt. Jetzt will ich wissen wie ich die verschiedene Buttons in der Liste festlege und wie ich andere Controls in jeder Seite eintrage.
    Danke im Voraus!
    MFG Zdravko



  • also ich mache das so, dass ich auf das tab-control für jeden tab ein static als child lege, und dann controls diesem static eben zuweise. dadurch habe ich eine art überbereich. wenn dann die nachricht kommt, dass ein anderer tab aktiviert wurde, verstecke ich die statics, und lasse nur das static anzeigen, was zu dem aktivierten tab gehört.

    mfg ominion



  • Zum einfügen von TabCtrl-Tabs guck dir mal TCM_INSERTITEM bzw TabCtrl_InsertItem an 🙂
    Ich glaube du musst für jede Tab-Seite einen eigenen Dialog in entsprechender Größe bauen, weiß aber nicht mehr, wie das alles genau ging. Hatte damals einfach alle Controls im normalen Dialog und jeweils die entsprechenden ausgeblendet 😃
    Ging sogar ganz gut, die Controls fürs erste Tab hatten die IDs 1000 bis 1xxx, die vom zweiten Tab 2000 bis 2xxx usw. Wenn ich ein Tab anzeigen wollte, hab ich erstmal das vorherige versteckt (solange die IDs abgefragt und dahinterstehende Controls versteckt bis GetDlgItem 0 zurück gab) und das nächste angezeigt. Hach das waren noch Zeiten *schwärm*



  • gipt doch n Gutes tut auf www.winapi.net



  • ich pers. bevorzuge es beim generieren des dialoges wo das tab vor kommt die tabs festzulegen, lauter dialoge fuer jeden tab mit create zu erstellen, dann bei jedem klick auf einer tab einfach beim onchanging alten ausblenden {einfach alle und feddich} und dann bei onchange den richtigen rein

    ausserdem hab ich den tabctrl meisten nur so hoch das man die tabs gerade so sieht, und die dialoge genau darunter platziert,
    dann hat man kein problem beim ersten start wegen das die weisse tab flaeche den dialog ueberdeckt



  • da da dam...
    ähmm...ja
    ALSO wenn du deinen dialog über eine resource erstellst, ignoriere das folgende einfach...
    du erstellst eine tabcontrol, und zwar ein großes. dann legst du tabs an. für jeden tab legst du ein tabcontrol-großes static feld an, denen du allen das tab-control als parent zuweist. diesen static-bereichen fügst dann controls hinzu (du weist also controls die static bereiche als parent zu). wenn über WM_NOTIFY die nachricht kommt, dass die tabs gewechselt werden, versteckst du eben diese static-überbereiche, und aktivierst nur, dass das die passenden controls eben zu dem tab beinhaltet.

    Mfg Ominion


Anmelden zum Antworten