Matthes Geschrieben 5. Februar 2004 Teilen Geschrieben 5. Februar 2004 Hallo, ich versuche einer Toolbar zur Laufzeit einen neuen Button hinzuzufügen. Das Bild des Buttons soll aus einer Bitmapdatei aus den Resourcen ausgelesen werden. Das ganze habe ich wie folgt realisiert: CToolBar *_wndToolBar = &((CMainFrame*)GetParent())->m_wndToolBar; CToolBarCtrl *_ctrlToolBar = &_wndToolBar->GetToolBarCtrl(); int nButCount = _ctrlToolBar->GetButtonCount(); _ctrlToolBar->AddBitmap(1,IDB_BITMAP1); int nStringCount = _ctrlToolBar->AddStrings("Test"); int nImgCount = _ctrlToolBar->GetImageList()->GetImageCount(); TBBUTTON tb; tb.iBitmap = nImgCount-1; tb.idCommand = ID_TEST; tb.fsState = TBSTATE_ENABLED; tb.fsStyle = TBSTYLE_BUTTON; tb.dwData = 0; tb.iString = nStringCount; _ctrlToolBar->InsertButton(nButCount, &tb); [/PHP] Das ganze klappt aber leider nur so halb: Wenn die Methode durchlaufen wurde, sieht man erstmal gar keine Veränderung, klickt man aber auf die Toolbar, so wird der neue Button sichtbar. Gibt es irgendeine Methode mit der die Anzeige der Toolbar aktualisiert wird? Ich habe es schon mit _ctrlToolBar->RedrawWindow und mit _ctrlToolBar->AutoSize() versucht, leider ohne Erfolg. Achso, ich benutze Visual C++ 6. Schonmal besten Dank im Voraus Matthes Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Guybrush Threepwood Geschrieben 5. Februar 2004 Teilen Geschrieben 5. Februar 2004 UpdateWindow() sollte das Problem lösen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Matthes Geschrieben 5. Februar 2004 Autor Teilen Geschrieben 5. Februar 2004 leider klappt das auch nicht Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Goos Geschrieben 5. Februar 2004 Teilen Geschrieben 5. Februar 2004 Hast auch schon ein Invalidate probiert? Goos Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Matthes Geschrieben 5. Februar 2004 Autor Teilen Geschrieben 5. Februar 2004 Leider auch nicht. Ist der Teil in dem ich den Button hinzufüge denn OK? Vielleicht liegts ja auch daran :confused: Ich hab nämlich auch das komische Phänomen, dass die Buttons alle breiter werden, wenn ich einen zweiten Button neu einfüge. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Matthes Geschrieben 6. Februar 2004 Autor Teilen Geschrieben 6. Februar 2004 Das aktualisieran der Anzeige habe ich jetzt mit GetParentFrame()->RecalcLayout(); hinbekommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.