Verschtelung: Eigenes Mainmenu Problem
-
- Beiträge: 6079
- Registriert: Do 21. Sep 2006, 07:51
- OS, Lazarus, FPC: iWinux (L 1.x.xy FPC 2.y.z)
- CPU-Target: AVR,ARM,x86(-64)
- Wohnort: Dessau
- Kontaktdaten:
Aber doch nich im selben Menü das kannst mir nich erzählen. Gib mal n Beispiel.
Und "warum auch immer" ist normalerweise gut aber in dem Fall unsinnig 2 Menüeinträge im selben Menü mit gleichen Namen ... welcehs soll ich denn da als benutzer deines Programmes benutzen kann ich mir das dann aussuchen ?
Und "warum auch immer" ist normalerweise gut aber in dem Fall unsinnig 2 Menüeinträge im selben Menü mit gleichen Namen ... welcehs soll ich denn da als benutzer deines Programmes benutzen kann ich mir das dann aussuchen ?
W.m.k.A.h.e.m.F.h. -> http://www.gidf.de/
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
was haltet ihr denn von so einem Format:
Und vorallem wie ermittele ich die Root Einträge ?
das kann ich ja nur anhand der Leerzeilen machen sehe ich das richtig ?
z.b. ich müsste dann eine Funktion schreiben die in der Lage ist den Level zurück zu geben.
ich rücke zweimal ein pro Level:
0 = Root einträge
1= 1. Level
2= 2. Level
....
und mit Menus die mehrer Sprachen können sollen, währe das auch überhaupt kein Problem.
Ich weiß noch nicht so recht.
edit1:
ja du hast recht. bei mir ist id = name aber caption ist legendlich nur der anzeige Text mehr nicht
währe Leichter zu lesen und es könnten Menus ohne Editor sehr schnell geschrieben werden, Problem währe nur die Umsetztung und das Pasen.Datei {
Neu:Neu,New
Öffnen:Öffnen,Open
Speichern...:Speichern,Save
SpeichernU:Speichern Unter, Save as
Beenden
}
Bearbeiten {
Ausschneiden {
Testitem0
Testitem1
TestItem2
}
Kopieren
Einfügen
Löschen
Zur Zeile Springen
}
Und vorallem wie ermittele ich die Root Einträge ?
das kann ich ja nur anhand der Leerzeilen machen sehe ich das richtig ?
z.b. ich müsste dann eine Funktion schreiben die in der Lage ist den Level zurück zu geben.
ich rücke zweimal ein pro Level:
0 = Root einträge
1= 1. Level
2= 2. Level
....
und mit Menus die mehrer Sprachen können sollen, währe das auch überhaupt kein Problem.
Ich weiß noch nicht so recht.
edit1:
ja du hast recht. bei mir ist id = name aber caption ist legendlich nur der anzeige Text mehr nicht
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
ich habe damit bisher immer meine Probleme mal eben schnell ein mainemnu zu erstellen. Frage mich nicht warum, aber der unterscheidet sich vom Delphi Mainmenu Editor. Ich bin einfach per Text Datei schneller.
Da gehe ich jede Wette ein. Selbst das Konfigurieren der Einträge also Tasten/farben/Beschreibungen zuweisen könnte ich mir in einem Text-Editor einfacher vorstellen. Ich habe aber sowieso vor ein richtigen Editor zu schreiben der den von Delphi ähnlich auf gebaut ist.
z.b. ich meine man kann keine Menu Einträge kopieren, wenn man die gleichen Einstellungen benötigt und sowas halt.
Da gehe ich jede Wette ein. Selbst das Konfigurieren der Einträge also Tasten/farben/Beschreibungen zuweisen könnte ich mir in einem Text-Editor einfacher vorstellen. Ich habe aber sowieso vor ein richtigen Editor zu schreiben der den von Delphi ähnlich auf gebaut ist.
z.b. ich meine man kann keine Menu Einträge kopieren, wenn man die gleichen Einstellungen benötigt und sowas halt.
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 2809
- Registriert: Sa 9. Sep 2006, 18:05
- OS, Lazarus, FPC: Linux (L trunk FPC trunk)
- CPU-Target: 64Bit
- Wohnort: Dresden
- Kontaktdaten:
[pluto hat geschrieben:also die ID habe ich eingeführt die hat mehrer vorteile:
1. ich Captions gleich bennen so oft ich möchte.
2. ich kann das Mainmenu in mehreren Sprachen basteln.
und die ID darf nur einmal vorkommen.
von dahrer kann ich dir nichts ganz folgen.
wir können auch sagen die ID ist der Name und nicht der Caption und fertig.
Wenn das leichter ist.
da steht alles, was ich ausdrücken wollte. Wir sollten uns nur mal auf Bezeichnungen festlegen, udn es ist völlig egal, auch wenn du alle Captions gleich machst (sehr Sinvoll übrigens, nach Styleguide ist davon abzuraten

Das letzte Format sihet sinnvoller aus, aber beachte, wenn schon, dann in Anführugnszeichen, was ist den, wenn die Caption dabei nen Komma enthält, was wohl eher vorkommt, als zwei gleiche Bezeichnungen?
Und wieso verdammt nchmal drei Werte:
Öffnen:Öffnen,Open

Caption ist klar, name ist klar, und was soll das dritte sein?
Wenn man es wirklich so machen will find ich das ganze nicht so völlig ausgerfiet, wieso nicht ne Untermenge von XML definieren, würde zumindest dem hype folgen:
Code: Alles auswählen
<MainMenu>
<MainItem>
<SubItem>
<SubMenü>
<subItem
<Subitem>
</SubMenü>
</Submenü>
</SubItem>
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
vor dem : ist der Name, danach die Captions in mehren Sprachen.Öffnen:Öffnen,Open
Dachte ich mir. Wenn ein , im Caption oder Hint vorkommen soll, sollten die "" bentutz werden
ich finde XML persönlich nicht so toll, aufwendig zu Pasen.
Ich verstehe auch nicht warum der Mediaplayer bei seinen Playlisten im XML Format abspeichert.
ich finde mein neues Format währe leichter zu Lesen als ein XML Format.
1. für den Menschen
2. auch für den Computer
z.b. die Root Items kann ich herausfiltern in dem ich prüfe ob ein Leerzeichen bzw. eine { oder} ist, wenn das nicht ist, dann ist es ein Root Iitem
und im übrigen brauche ich hier nur eine Funktion zu schreiben die ich universal einsetzten könnte(das hoffe ich auf Jedenfalls.
Danke für eure Ratschläge.
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 2809
- Registriert: Sa 9. Sep 2006, 18:05
- OS, Lazarus, FPC: Linux (L trunk FPC trunk)
- CPU-Target: 64Bit
- Wohnort: Dresden
- Kontaktdaten:
die Playlisten des MP sind aber so langsam, als wenn sie mit Java über Net gelesen werden würden, musste jetzt mal gesagt werden 
Im Oo steht nirgend zwei mal Spalte und zweimal Zeile, also bei mir nicht in Calc und auch nicht im Writer, Pluto, wo hast du das denn her. Abgesehen ist das ja immernoch das Kontextmenü und kein MainMenu
Auf der anderen Seite gibt es ganz komfortable Editoren für XML, wenn du dich dabei an DOM hältst.

Im Oo steht nirgend zwei mal Spalte und zweimal Zeile, also bei mir nicht in Calc und auch nicht im Writer, Pluto, wo hast du das denn her. Abgesehen ist das ja immernoch das Kontextmenü und kein MainMenu

Auf der anderen Seite gibt es ganz komfortable Editoren für XML, wenn du dich dabei an DOM hältst.
machs immer, erstens ne klare Trennung und zweitens kann es so schlechter vergessen werden und drittens sparst du dir die Kontrolle, obs nun nötig ist oder nicht.Dachte ich mir. Wenn ein , im Caption oder Hint vorkommen soll, sollten die "" bentutz werden
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
was meinst du damit ?benutzt xml kann man nämlich transformiere
das Format hätte wesentlich besser bzw. einfacher ausfallen können. ich bin der Meinung das es länger dauert eine XML Datei zu lesen als eine INI Datei oder vergleichbares.
Stimmt jetzt sehe ich das auch ich habe Zelle mit Zeile verwechselt. aber wahr mir 100%ig sicher evlt. in einer älternen versionIm Oo steht nirgend zwei mal Spalte und zweimal Zeile, also bei mir nicht in Calc und auch nicht im Writer, Pluto, wo hast du das denn her. Abgesehen ist das ja immernoch das Kontextmenü und kein MainMenu![]()
was genau meinst du damit ?machs immer, erstens ne klare Trennung und zweitens kann es so schlechter vergessen werden und drittens sparst du dir die Kontrolle, obs nun nötig ist oder nicht.
wobei ich mir gerade überlegt habe ich könnte für mehrer sprachen es auch besser machen mit
Caption1
Caption2
Caption3
Hint1
Hint2
Hint3
und die zahlen stehen dann für die verwendete Sprache ich hoffe ihr könnt es euch vorstellen wie ich es meine.
am Anfang der Datei könnte z.b. eine liste mit sprachen stehen:
Deutsch, Englisch, Spanisch.
Im Programm selber wird davon jetzt eine Sprache ausgewählt nehmen wir Deutsch das ist der 1. Eintrag also wird Caption1 gelesen und Hint1 gelesen... wie währe das ?
edit1:
Ich finde ein Context Menu ist auch ein bestand teil von einem MainMenu. oder nicht ?
nur das es anders geöffnet wird als ein MainMenu...
MFG
Michael Springwald
Michael Springwald
-
- Lazarusforum e. V.
- Beiträge: 2809
- Registriert: Sa 9. Sep 2006, 18:05
- OS, Lazarus, FPC: Linux (L trunk FPC trunk)
- CPU-Target: 64Bit
- Wohnort: Dresden
- Kontaktdaten:
Christina meinte die tatsache, das viele frmede Programme (wie Winamp, oder Christians Audio-X (kann es das?)) die Wiedergabelisten vom MS-Mediaplayer auslesen können und man somit seine Wiedergabelisten fast in jedes Programm importieren kann.was meinst du damit ?
das Format hätte wesentlich besser bzw. einfacher ausfallen können. ich bin der Meinung das es länger dauert eine XML Datei zu lesen als eine INI Datei oder vergleichbares.
Ich würde die Attribute immer in " setzen, dann gibts ne klare Linie.was genau meinst du damit ?
Darf ich jetzt mal was anderes ins Spiel bringen? Was hältst du davon, das Menü in einer Sprache zuerstellen. Und für weitere Sprachen einfach die datei zu kopieren und die Strings zu übersetzen? Es ist ja durchaus üblich, für jede Sprache nen eigenes Sprachfile zu haben, und nicht alles in eines zu packen. Wenn ich 20 Sprachen unterstützen wöllte wäre das dann schon unpraktisch. Abgesehen davon, das viel besser einzelne Übersetzungen angefertigt werden könne, wenn jeder Übersetzer (wer kann schon selbst so viele Sprachen) nur seine Sprachdatei bearbeiten muss.
Kurzum, lager die sonstigen Sprachen aus, so das sie nach Bedarf die Standardsprache ersetzen. (Wie die Dialogs von Laz, Sprachdateien von Php-Anwendungen, wie phpBB, usw.)
-
- Lazarusforum e. V.
- Beiträge: 7192
- Registriert: So 19. Nov 2006, 12:06
- OS, Lazarus, FPC: Linux Mint 19.3
- CPU-Target: AMD
- Wohnort: Oldenburg(Oldenburg)
Danke für den TIPP. Danach habe ich noch gar nicht gedacht.Darf ich jetzt mal was anderes ins Spiel bringen? Was hältst du davon, das Menü in einer Sprache zuerstellen. Und für weitere Sprachen einfach die datei zu kopieren und die Strings zu übersetzen?
es könnte ja ein Gobales Verzeichnis geben. Wo alle diese Dateien rein kommen.
Am Anfang könnte ein Kurzte Beschreibung und Name der Sprache stehen. Evlt. sogar mit ICON bzw. Flagge. und der User kann dann per Menu eine Sprache auswählen.
Für die gesammte GUI.
naja m3u kann auch so gut wie jedes Audio Format lesen.Christina meinte die tatsache, das viele frmede Programme (wie Winamp, oder Christians Audio-X (kann es das?))
Ich hatte sogar mal ein Klasse geschrieben die konnte universial jedes Format lesen.
Sie brauchte nur eine Vorlage. Aber es gab irgendwie einen hacken.
Ich konnte aufjedenfall schreiben und lesen.
Die Vorlage mussten sich an ein Schmea halten.
war eine tolle sache. so brauchte ich nicht für jedes Format eine eigene Klasse zu schreiben.
Es gab allerdings auch nur die Methoden:Speichern und Laden. Beim speichern wurde die Alte Datei einfach gelöscht und neu erstellt.
ich konnte damit auf jedenfall folgende Formate erfolgreich laden und speichern:
ASF, PLS, WPL, M3U(beide varianten)
ich konnte sogar spicelle sachen lesen wie anzahl, und die jeweiligen Tag Eigenschaften auslesen.
MFG
Michael Springwald
Michael Springwald