einblenden/ausblenden/überblenden von fenstern in einem formular
-
ich weis nicht, ob die überschrift genau das trifft, was ich euch nun fragen will, aber ich fang einfach an:
also, für meinen gui wrapper wollte ich einen mechanismus implementieren, der es ermöglichen soll, vordefinierte layer mit ihren buttons checkboxen progressbars usw zu erstellen, und dann ganz einfach zwischen ihnen zu wechseln://pseudocode,namen müssen keinen sinn ergeben,sollten es aber Form* formular=createForm();//formular erstellen LayerManager* manager=formular->createLayerManager(0,0,200,200);//layermanager für den bereich 0/0 200/200 erstellen //3 layer erstellen Layer* layer1=manager->createLayer(); Layer* layer2=manager->createLayer(); Layer* layer3=manager->createLayer(); //für jeden layer ein design festlegen layer1->createButton(50,50,"hallo"); layer1->createProgressBar(30,30,150,30); layer2->createButton(50,50,"nochmal hallo"); layer3->createDirectXwindow(0,0,200,200);//naja platzhalter halt^^ manager->display(layer1);//layer1 anzeigen Sleep(1000); manager->display(layer2);//layer2 anzeigen Sleep(1000); manager->display(layer3);//layer3 anzeigen ps: mir viel kein andrer name für layer ein^^
geplant habe ichs, dass der layermanager ein einzelnes fenster ist, und die einzelnen layer jeweils childfenster, die sich den gleichen platz teilen, das problem ist nun wie ich immer nur eins sichtbar machen lasse, ok das ginge noch via Show window, aber reicht das auch aus, dass nur das jeweils sichtbare layer die nachrichten erhält? Oder muss ich erst alle andren fenster noch zusätzlich diablen? oder muss man was ganz andres machen? naja ich hab ka^^
gibts da vielleicht schon einen bereits in der winapi existierenden mechanismus der sowas machen kann?
-
Also prinzipiell sollte es eigentlich genügen die anderen Fenster einfach zu verstecken.
Aber das was du suchst sind glaub' Property Sheets
-
danke für den link,aber das is nicht ganz das was ich suche :),ich werds dann mal mit verstecken ausprobieren