Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Software-Projekte der Mitglieder (https://www.delphipraxis.net/26-software-projekte-der-mitglieder/)
-   -   MainMenu (https://www.delphipraxis.net/73409-mainmenu.html)

NecroWurst 17. Jul 2006 20:04


MainMenu
 
Liste der Anhänge anzeigen (Anzahl: 2)
Hallo DP!

Ich wollte hier mal mein erstes halbwegs brauchbares Programm vorstelle:

MainMenu
Die Grundidee kam mir durch die Shell-Mod 'Aston', wo es ein PlugIn gibt, das am oberen Desktop-Rand ein Menü erstellt, welches man selber befüllen kann. Da ich kein Programm in dieser Art gefunden habe, habe ich mir kurzerhand selber was geschrieben.

Das Ergebnis
... ist ein kleines Programm, das am oberen Desktop-Rand ein Menü erstellt. Dort kann man über die Einstellungen verschiedene Gruppen / Kategorien erstellen und dann einzelne Menüeinträge anlegen. Die Menüeinträge bestehen einmal aus dem Namen, der auch angezeigt wird, und zum anderen aus dem Pfad zum Programm/ Ordner / Datei, die dann später per ShellExecute aufgerufen wird.
Man kann vom Explorer Dateien per Drag and Drop in die Einstellungen ziehen und das Programm fügt automatisch ein neues Element in die zuletzt aktive Gruppe ein. Dabei wird der Dateiname automatisch als Menü-Eintrag-Caption verwertet, kann aber jeder Zeit verändert werden.
Was bisher noch nicht geht: Man kann keine Parameter und Untergruppen erstellen! Wenn das Programm hier aber auf Zustimmung trifft, kann ich das auch noch implementieren...

Alle Daten werden in eine XML-Datei gespeichert! Die Registry bleibt unangetastet und auch sonst werden keine Dateien geschrieben, gespeichert oder verändert. Wenn man das MainMenu im Autostart haben will, muss man eine Verknüpfung von Hand in den Autostart machen.


So, nun bin ich aber mal auf eure Meinung und Kritik gespannt! Viel Spaß beim Testen!

Anlage:
Programm gezippt und Screenshot

P.S. Noch mal danke an Hawkeye219 für den Tipp mit dem AnsiSameCaption!!

[Edit:] Es ist eine erste, nicht offizielle Testversion! Bitte beachten!

[Edit 19.07.2006]
Neue Version:
Änderungen:
* Neue Optionen zum Verhalten:
- Normal
- Verhalten wie statische Taskleiste (Appbar)
- Verhalten wie dynamische Taskleiste ("Appbar on demand")
* Extra für die Leute mit 2 Monitoren (wie idontwantaname ;-)) habe ich die Position der EInstellungen auf poScreenCenter gesetzt

[Edit 19.07.2006 - Teil zwei]
:wall: Argh, ich bin doch blöd! Meine Funktion zum Auslesen der Programm-Icons hatte einen Total blöden Fehler drinne - ich habe vergessen die '"' (Anführungszeichen) vor der Funktion aus dem Pfad zu entfernen - :wall:
Aber nun habe ich das gefixt und nun sollten auch die Icons - sowohl von Echsen als auch Dateien - richtig ausgelesen werden!
...natürlich nicht, wenn man ein Commando wie z.B. 'calc' oder 'msconfig' als Pfad angibt!

[Edit 20.07.2006]
--> Liste von H4ndy abgearbeitet.
  • Dabei ist das MainMenu immer noch was zickig, wenn man die Option 'Verhalten wie dynamische Taskleiste' aktiviert ein anderes Fenster maximiert davor steht... noch reicht es aus, wenn man einfach an den oberen Rand des Desktops klickt, versuche ich aber noch zu fixen...
  • Den Graphikfehler unter dem Luna-Theme (u.ä.) kann ich irgendwie nicht nachvollziehen! Ich verwende für die Gruppe mit den weiteren Einstellungen eine simple GroupBox... Mal sehen, das ich noch ändern kann

bladecs 17. Jul 2006 20:34

Re: MainMenu
 
also ist ganz gut dein prog. nur würde ich den "xp-stil" einbinden (über ressource) und auch insgesamt
das ganze prog grafisch ansprechender designen. auch würde ich es so machen, dass dein prog. nicht ein teil der obersten icons des desktops bedeckt.
zu dem wäre die funktion, dass das prog. auomtisch ausgeblendet wird ganz interessant und sobald man mit der maus obenhinfährt wieder erscheint. gleichzeitig soll es aber wenn es eigeblendet ist, im vordergrund stehen.
könntest auch noch die icons der eigebundenen pfade auslesen und im mainmenu einfügen.
aber ansonsten ist das prog ganz solide (soweit wie ich es getestet habe ^^ ), weiter so ;)

Matze 17. Jul 2006 20:38

Re: MainMenu
 
Hi,

ich hab's nur kurz mal gestartet und musste feststellen, dass das Menü von anderen Fenstern überlagert werden kann, das ist nicht schön. Wenn man so ein Multifunktions-Menü hat, sollte es auch generell erreichbar sein (Kann ja optional sein). Mir fällt leider das Stichwort gerade nicht ein, doch gibt es etwas, um den Desktopbereich einzuschränken, dann werden Fenster, auch wenn diese maximiert sind, nur bis zu deinem Menü reichen, es ist quasi die Desktop-Grenze. Das solltest du unbedingt noch einbauen.

Über die GUI lässt sich streiten. ;)

Nachtrag: Das meinte ich: Hier im Forum suchenAppbar.

NecroWurst 18. Jul 2006 07:32

Re: MainMenu
 
Hi, schon mal vielen Dank für's Testen und die schnellen Antworten!

Da habe ich ja schon wieder was, das ich einbauen könnte! Ich werde mal sehen, was ich realisiert bekomme und die neuen Version dann hier wieder reinstellen!

²Matze:
An wen war eigentlich deine Bemerkung mit der GUI gerichtet? An mein Programm oder an bladec?
Zugegeben, die GUI - gerade bei den Einstellungen - ist alles andere als schön, aber funktional, haha! Ich mag so klatschbunte Optik und auf Deibel-Komm-Raus-Anderseinwollen nicht... Vielleicht änder ich die Optik aber auch noch, wer weiß...
Erst mal haue ich ein XP-Manifest drauf und schaue wie ich die AppBar einbastle...

H4ndy 18. Jul 2006 07:49

Re: MainMenu
 
Zitat:

Zitat von NecroWurst
[...]Erst mal haue ich ein XP-Manifest drauf und schaue wie ich die AppBar einbastle...

Du könntest auch eine exename.manifest-Datei mit dazupacken. Ist diese vorhanden, so wird der XP-Stil aktiviert. Löscht man diese, hat man wieder die alten Controls.

Hier steht, was in die Datei muss:
http://www.microsoft.com/germany/msd...Einsetzen.mspx

Was die das "OnTop"-Problem angeht, so kannst du auch beim Anzeigen das Menü auf "TopMost" setzen,
um so alle anderen Fenster zu überragen. (Siehe unter "SetWindowPos" im Win32-SDK).

Nils_13 18. Jul 2006 08:25

Re: MainMenu
 
Ein nettes Progrämmchen. Du könntest dem Benutzer die Wahl lassen, welchen Skin derjenige haben möchte, denn ich finde das Windowsdesign unschön, während Andere den Xp-Style schön finden.

Hiermit kannst du schon schöne Sachen zusammenstellen und dem Benutzer auch die Wahl des Skins lassen.

NecroWurst 18. Jul 2006 11:16

Re: MainMenu
 
Zitat:

Zitat von H4ndy
Du könntest auch eine exename.manifest-Datei mit dazupacken. Ist diese vorhanden, so wird der XP-Stil aktiviert. Löscht man diese, hat man wieder die alten Controls.

Habe ich jetzt auch so gelöst, vielen Dank!

Zitat:

Zitat von H4ndy
Was die das "OnTop"-Problem angeht, so kannst du auch beim Anzeigen das Menü auf "TopMost" setzen,
um so alle anderen Fenster zu überragen. (Siehe unter "SetWindowPos" im Win32-SDK).

Hmm... Da muss ich mal schauen, ich fände die Option OnDesktop eigentlich noch am nützlichsten, damit mein Programm nicht mit der Tasten-Kombi [WIN]+D verschwindet... :gruebel:

²Nils:
Danke für den Hinweis, aber mit Skins lass ich mir noch ein wenig Zeit, erst mal muss das Programm vernünftig laufen!

²All:
Danke für die Vorschläge und die Kritik! EIne neue Version ist in der Mache und wird wahrscheinlich noch heute Abend hier hochgeladen!

jmit 18. Jul 2006 15:44

Re: MainMenu
 
Hallo,

ich kann mich dem nur anschliessen, ist ein tolles Programm, dass aber trotzdem noch einige Features haben könnte.

Wie nenne ich eine angelegte Gruppe um?

Gruß Jörg

NecroWurst 18. Jul 2006 16:03

Re: MainMenu
 
Hi!
Eine Gruppe bennent man fast so um, wie man auch im Explorer Dateien umbenennen kann: Man markiert die Gruppe und klickt anschließend noch mal auf die Gruppe.
Ist halt ein Standard-TTreeView mit AutoEdit:=True!

Was schweben dir denn noch für weitere Features vor Augen? Vielleicht kann ich sie ja noch einbasteln... :gruebel:

Matze 18. Jul 2006 17:34

Re: MainMenu
 
Hi

Zitat:

Zitat von NecroWurst
An wen war eigentlich deine Bemerkung mit der GUI gerichtet?

An dein Program, Erklärung folgt.

Zitat:

Zitat von NecroWurst
Zugegeben, die GUI - gerade bei den Einstellungen - ist alles andere als schön, aber funktional, haha! Ich mag so klatschbunte Optik und auf Deibel-Komm-Raus-Anderseinwollen nicht...

Ich auch nicht, ich habe seit Jahren unter Win XP den klassischen Stil, das sagt eigentlich alles. :stupid: Du solltest die Komponenten vielleicht etwas anders anordnen und auch BorderStyle auf BsDialog stellen, sodass man das große "X" oben rechts hat und nicht dieses mikrige, mir gefällt das gar nicht. Vielleicht bin ich auch der einzige, dem das kleine "x" nicht zusagt. ;)


Alle Zeitangaben in WEZ +1. Es ist jetzt 18:56 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz