www.mikrocontroller.net

Forum: PC-Programmierung GUI - Wie erstellt man komplett eigene GUI-Elemente (Schaltflächen, Dropdowns,.)


Autor: Marco K. (mbc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Hi Leute

Mal ne Anfängerfrage bzgl. GUI.
Es gibt ja verschiedene Programme mit denen man z.B. bei VB/VC (NET) 
über Skins die GUI beeinflussen kann.

Ich stelle mir aber gerade die Frage, wie man es schafft, seine eigenen 
Controls zu erstellen.

Ich möchte z.B. eine Dropdownliste komplett im eigenen Design. Nur 
besteht dieses Control ja aus mehreren Teilen wie z.B. dem eigentlichen 
Fenster, der Schaltfläche zum Draufklicken und zuletzt dem ausgeklappten 
Zustand mit seinen Einträgen ...

Kurz gesagt: Es gibt mehrere Elemente in einem Control, welche je nach 
Zustand oder Aktion sich ändern oder anpassen.

Mit Skins kann man zwar das Aussehen schon ein wenig abändern, aber so 
richtig seine eigenen Controlls kann man damit wohl nicht machen (soweit 
ich weis). Wenn ich z.B. das Ausklappen eines Dropdown-Controls 
animieren möchte, dürfte dies mit Skins nicht so einfach möglich sein, 
zumal die Standard-Windows(NET)-Formklassen sowieso keine Animationen 
zulassen.

Deshalb mal meine Frage:
Wie erzeugt man eigene Controls mit eigenem Verhalten und animierten 
Aktionen? Bitmap- oder Vektorbasiert.

Zugegeben eine sehr komische und ungewöhnliche Frage, aber eigene 
animierte Controls sollten heutzutage doch machbar sein, ich denke 
zumindest mal das es die Zukunft sein wird.

Irgend jemand hier mit Tipps und Tricks ??

Autor: Peter (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
In dem man alles selber macht, du musst alles selber malen und auf die 
Events reagieren.

ABER MACH ES NICHT!

Auch wenn du der Meinung bist das es schöner ist. Sobald man mal über 
RDP Arbeitet flucht man über solche selbst gebastelten Controls - sie 
sind langsam, haben meist refresh Probleme und passend nicht zum 
restlichen Look und Feeel.

Autor: Marco K. (mbc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
RDP = Remote Desktop Protocol ?
Wenn ja ... Ok, aber dafür soll das ja nicht sein.



Wie immer bei mir kann ich 5 Stunden lang googeln und nix finden, nach 
einem Post in einem Forum ist dann die erste weitere Suche ein Treffer.

Hab gerade WPF von MS gefunden.
Mit Expression Blend kann man ja anscheinend seine komplett eigenen 
Controls erstellen, laut einem Tutorial genau das was ich meine bzw 
suche.
Man kann wohl sogar auch die GUI komplett getrennt als eigene EXE machen 
... hmmm .....
http://msdn.microsoft.com/de-de/library/bb613598(p...


Nachteil ist wohl: Benötigt NET 3.0 und höher ...

Hat da jemand Erfahrung drin ? (Geschwindigkeit, ...)

BTW: Da obige Beispiel zeigt einen einfachen Button ... welches 
Stichwort brauchte ich, wenn ich eine Dropdownliste erzeugen wollte ? 
Die Anzahl der Einträge sowie deren Namen müssten ja an das Control 
übergeben werden.

Wollte mal schauen ob ich das irgendwie hinkriege wenn ich ein Stichwort 
zum googeln habe.

MFG

Autor: Arc Net (arc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Vorteile WPF:
- unterstützt Vektorgraphik
- bessere Trennung von Code und UI
- Trennung von Steuerelementen und deren Aussehen (Theming)
- besseres Databinding
- 3D-Unerstützung (Shader, Texturen etc)
- Animationen (auch zeitgesteuert)
- Auflösungsunabhängig bzw. ist dies mit WPF einfacher umzusetzen
- schnell (wird über Direct3D gerendert)
Nachteile WPF:
- deutlich anders als WinForms -> steile Lernkurve
- unterstützt nur alles ab XP SP2
- z.Z. etwas anderes Fontrendering als das restliche System (wird aber 
gerade überarbeitet, Workarounds: 
http://windowsclient.net/wpf/white-papers/wpftextc...)

zum Starten u.U. ganz hilfreich
http://wpf.codeplex.com/Wiki/View.aspx?title=South...
andere Startpunkte
http://wpf.codeplex.com/
http://www.codeproject.com/KB/WPF/

Autor: der mechatroniker (Gast)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Lass es sein. Du verärgerst den Benutzer, für den die GUI einfach nur 
funktionieren soll, und zwar in allen Details so, wie er es erwartet 
(und sei es Copy+Paste über Strg+C und Strg+V oder über Kontextmenü, je 
nach persönlichen Vorlieben). Der Programmieraufwand, bis son Control 
einfach nur das selbe kann wie das eingebaute von Windows ist nicht zu 
unterschätzen, vor allem auch der Testaufwand (wird Unicode unterstützt, 
ist zu prüfen, ob arabische oder chinesische Schrift auch tatsächlich 
richtig rauskommt).

Autor: Marco K. (mbc)
Datum:

Bewertung
0 lesenswert
nicht lesenswert
Ich danke Euch für die Antworten.

Ist erstmal wieder reichlich zum nachlesen, rumgoogeln und Überdenken.
Die Einwände nehme ich zu Herzen und kann mich jetzt speziell darüber 
weiter informieren.


Vielen Dank !

MFG

Antwort schreiben

Die Angabe einer E-Mail-Adresse ist freiwillig. Wenn Sie automatisch per E-Mail über Antworten auf Ihren Beitrag informiert werden möchten, melden Sie sich bitte an.

Wichtige Regeln - erst lesen, dann posten!

  • Groß- und Kleinschreibung verwenden
  • Längeren Sourcecode nicht im Text einfügen, sondern als Dateianhang

Formatierung (mehr Informationen...)

  • [c]C-Code[/c]
  • [avrasm]AVR-Assembler-Code[/avrasm]
  • [code]Code in anderen Sprachen, ASCII-Zeichnungen[/code]
  • [math]Formel in LaTeX-Syntax[/math]
  • [[Titel]] - Link zu Artikel
  • Verweis auf anderen Beitrag einfügen: Rechtsklick auf Beitragstitel,
    "Adresse kopieren", und in den Text einfügen




Bild automatisch verkleinern, falls nötig
Bitte das JPG-Format nur für Fotos und Scans verwenden!
Zeichnungen und Screenshots im PNG- oder
GIF-Format hochladen. Siehe Bildformate.
Hinweis: der ursprüngliche Beitrag ist mehr als 6 Monate alt.
Bitte hier nur auf die ursprüngliche Frage antworten,
für neue Fragen einen neuen Beitrag erstellen.

Mit dem Abschicken bestätigst du, die Nutzungsbedingungen anzuerkennen.