2009-05-04 13 views
2

Ich habe einige coole Anwendungen mit großartig aussehenden Skins gesehen. Ich bin neu in MFC und ich möchte eine Anwendung mit der Fähigkeit erstellen, Skins zu ändern. Wie wird es in MFC gemacht? Ich habe einige Tutorials überprüft, bin aber ein bisschen veraltet. Danke ...Skinning MFC-Anwendungen

Antwort

1

MFC im Allgemeinen ist veraltet, aber Sie wahrscheinlich schon k jetzt das. Wenn Sie bereit sind, zu zahlen, scheint es einen Anbieter zu geben, der eine Skinning-Komponente bereitstellt. Siehe BCGSoft.

alt text

Eine Alternative vielleicht für andere Plattform aussehen wie Mozillas XULRunner framework, die Songbird (Developer Center) basiert. Siehe Appearance Add-on und The Joy of XUL.

alt text http://addons.songbirdnest.com/addon-images/1345/Screenshot-darksuper_thumbnail.png?1218294592

alt text http://addons.songbirdnest.com/addon-images/197/zrzutekranu-Blank_page_-_Songbird_thumbnail.png?1211917007

+0

Es gibt coole COMs und ActiveX aus dem Internet, genauso wie skincrafter, aber es kostet auch etwas Geld. Ich bin mir nicht sicher, was XULRunner mir bieten wird, dachte ich ... Ich werde nachsehen ... – Owen

+0

Es gibt coole COMs und ActiveX aus dem Web, genauso wie skincrafter, aber es kostet auch etwas Geld. Ich bin mir nicht sicher, was XULRunner mir anbieten wird ... Ich werde nachsehen ... – Owen

1

Nur eine Anmerkung. Das Konzept UI Skinning ist eine allgemeine Software-Design-Aufgabe (im Grunde ein Plugin Konzept) und ist nicht (nach meinem Wissen) als Service von jeder Sprache oder Framework wie MFC explizit unterstützt. I.e. Es gibt keinen "MFC-Weg", Skins zu machen, und auch keinen ".NET-Weg". Aber Sie können beide verwenden, um die Unterstützung für die Häutung zu entwerfen.

Das heißt, einige Sprachen oder Frameworks erleichtern die Implementierung von Skinning-Unterstützung möglicherweise als andere. Ich würde generell C# /. NET für die UI-Codierung empfehlen, aber große Teile der Gestaltung von Plugin/Skin-Unterstützung geht es um allgemeine Code-Mechanismen und Schnittstellen, und da ist die Frage der Sprache/Framework eher strittig. Es gibt auch fertige Frameworks für viele Sprachen, die dies für Sie tun, wenn Sie nicht daran interessiert sind, es selbst zu schreiben.

einige Links, die nützlich sein könnten:

Plugin concept (beachten Sie die Liste der Plugin-Frameworks für einige Sprachen an der Unterseite)

Facade design pattern

Mediator design pattern

General info about skins

+0

Ich habe Proben gesehen eine XML-Datei verwenden, aber ich bin nicht sicher, wie mfc die Datei verwendet die Anwendung die Haut. – Owen

+1

Das ist mein Punkt. MFC macht das nicht out of the box. Sie müssen Code schreiben, um die XML-Datei zu verstehen. Die XML-Datei ist wahrscheinlich auch für jede Art von Anwendung unterschiedlich. – sharkin