UI-Programmierung unter Windows

Das Forum für Programmierer und Systemadmins. Von Shell-, Perl- und PHP-Scripts bis zur objektorientierten Programmierung mit C++.

UI-Programmierung unter Windows

Beitragvon Lupin III. » Fr 22 Jul, 2005 00:32

So das ist mein Wunsch: Ich würde gerne ein Popupmenü programmieren, dass unabhängig vom gerade aktiven Programm auftaucht, wenn ich die mittlere Maustaste kurze Zeit halte (mit autohotkey habe ich schon so etwas zusammengebracht, allerdings nur in Standard-Listenform ohne Icons).
Das Menü soll die Icons aller in einem Ordner vorhandenen Dateien (z.B. dem Quicklaunch-Ordner) ohne Hintergrund (also frei schwebend) anzeigen und sich beim Draufklicken wie vom Startmenü gewohnt verhalten.

Mein Problem bei der Sache: ich habe noch nie etwas für die Windows-Oberfläche programmiert und weiß daher überhaupt nicht, wo ich anfangen soll. Syntaxmäßig habe ich Erfahrung mit einigen C artigen Sprachen (PHP, Perl, Java, C++). Auch wenn es jetzt für Windows ist, möchte ich mich nicht vollkommen auf die Plattform festlegen (also kein .NET) und es später möglicherweise mit Änderungen auf Linux verwenden können.

Vielleicht hat einer von euch schon soetwas ähnliches programmiert. Kann mir jemand Tipps geben welche Programiersprache sich gut dazu eignet (ich würde auch gerne eine paar grafische Effekte einbauen), welche IDE/welchen Compiler ich verwenden soll?
Lupin III.
Neu im Board
Neu im Board
 
Beiträge: 15
Registriert: So 04 Jan, 2004 18:20

Beitragvon ulrich » Fr 22 Jul, 2005 08:59

wenn du non-standard-effekte willst (und auch kontext- bzw. popup-menü durch mittlere (anstatt rechte) maustaste gehört dazu), mußt du wohl tiefer einsteigen, und eine sprache wählen, die dir erlaubt, auf die windows-api auch direkt zuzugreifen (z.B. C++). dabei geht allerdings die plattfrom-unabhängigkeit flöten.
wenn du mit einer standard GUI zufrieden bist, sind sicher die in PHP, Perl, Java enthaltenen GUI bibliotheken ausreichend.
eine plattfromunabhängige GUI bibliothek für C++ ist QT von TrollTech. da kann (?)/konnte man früher die älteren versionen runterladen. eine lizenz ist nur nötig, wenn du dann dein programm verkaufen willst.
ulrich
Senior Board-Mitglied
Senior Board-Mitglied
 
Beiträge: 287
Registriert: Do 13 Nov, 2003 14:27

Beitragvon Lupin III. » Fr 22 Jul, 2005 11:55

Mit autohotkey (echt praktisches, freies Programm um unter Windows mehr aus Maus und Tastatur rauszuholen) kann ich den mittleren Mausklick abfangen und danach eine Funktion in einer dll aufrufen, d.h. wenn ich mein Menü in so eine DLL reinbekomme, muss ich mich "nur" noch um die Auswahl mit der linken Maustaste kümmern.

Ein Problem ist auch die Sache, dass ich gerne die Icons verwenden würde, die die lnk-Datei anzeigt. Allerdings habe ich auch gar keine Ahnung, wie ich an die rankomme.

Die Tutorials, die ich gefunden habe, sind entweder sehr oder oder setzen schon auf einem vorhandenen Wissen über die Windows-API auf. Das ist echt schwierig.
Lupin III.
Neu im Board
Neu im Board
 
Beiträge: 15
Registriert: So 04 Jan, 2004 18:20

Beitragvon ulrich » Fr 22 Jul, 2005 12:22

Lupin III. hat geschrieben:Mit autohotkey (echt praktisches, freies Programm um unter Windows mehr aus Maus und Tastatur rauszuholen)
[...]
Die Tutorials, die ich gefunden habe, sind entweder sehr oder oder setzen schon auf einem vorhandenen Wissen über die Windows-API auf. Das ist echt schwierig.

Ich dachte, es sollte plattformunabh. sein?

"die tutorials sind sehr ?" - GUI ist halt recht komplex. Ich fand den _Einstieg_ mittels MS-DeveloperStudio eigentlich recht einfach, allerdings halt beschränkt auf Windows, und auf das, was man so über den Wizard des DeveloperStudios zusammenklicken kann.
Wenn du dann verstehen willst, was passiert, _mußt_ du tiefer einsteigen, aber danach fällt dir der Umgang mit anderen Toolkits wohl auch nicht mehr schwer. Vom DeveloperStudio gibt's bei manchen Bücher kostenlose Autorenversion dazu.

Wenn ich mich recht erinnere, ist in Perl das Erzeugen eines Dialogfensters sehr einfach, weiter habe ich mich damit (in Perl) aber nicht auseinandergesetzt.
ulrich
Senior Board-Mitglied
Senior Board-Mitglied
 
Beiträge: 287
Registriert: Do 13 Nov, 2003 14:27

Beitragvon Lupin III. » Fr 22 Jul, 2005 22:16

ulrich hat geschrieben:Ich dachte, es sollte plattformunabh. sein?


Das stimmt. Ich meinte damit allerdings, dass ich mich zumindest am Anfang nicht um das Abfangen des auslösenden Mausevents kümmern muss, was das ganze erleichtert. Wenn ich mal verstehe wie das ganze funktioniert, kann ich das auch noch selber übernehmen.

ulrich hat geschrieben:"die tutorials sind sehr ?"

"basic", erzeugen z.B. nur ein Fenster. Iconbehandlung oder das Prüfen der Maus ist da bis jetzt nirgends vorgekommen.

Die Plattformunabhängigkeit werde ich bis auf weiteres mal vergessen und schauen was ich mit VS C++ zusammen bekomme.
Lupin III.
Neu im Board
Neu im Board
 
Beiträge: 15
Registriert: So 04 Jan, 2004 18:20

Beitragvon lordpeng » Fr 22 Jul, 2005 22:29

>Wenn ich mich recht erinnere, ist in Perl das Erzeugen eines Dialogfensters sehr einfach
stimmt, wenn die richtigen CPAN's vorhanden sind, ich bevorzuge¹ perl zwar für problemlösungen, aber grafische anwendungen würde ich mit perl dann doch nicht unbedingt machen

[¹] ich bin jedoch kein programmierer, ich verwende perl-scripts im grunde nur als arbeitserleichterung ...
lordpeng
Moderator
Moderator
 
Beiträge: 10183
Registriert: Mo 23 Jun, 2003 22:45


Zurück zu PROGRAMMIER FORUM

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 21 Gäste