![]() |
MainMenu items
hoi
ich habe ein mainmenu, mit einem item das heisst "Datei -> Connect" wieso klappt das nicht?:
Delphi-Quellcode:
Connect1.Caption := 'disconnect';
|
Re: MainMenu items
Sage mir doch einen guten Grund, warum das zweisen eines neuen Anzeigetextes auf ein Menuitem nicht klappen sollte.
Das ist doch logisch das Du einem Menueintrag (zumindest in der eigenen Applikation) jederzeit einen neuen Text zuweisen kannst... so funktionieren ja auch viele Übersetzungen in Anwendungen. |
Re: MainMenu items
es geht einfach nicht, sonst würd ich ja nicht posten... "Connect" ist ein untermenü von "datei"
|
Re: MainMenu items
Hallo Silent,
Ich glaube du solltest dir deinen eigenen Thread nochmal durchlesen, ich glaube nicht, dass es im Moment verständlich ist, welches Problem du hast. Klappt etwas nicht, was klappen sollte, oder andersrum? Gruß Jan |
Re: MainMenu items
achso, lol, ich habe vergessen "NICHT" dazuzuschreiben, sorry :-D
|
Re: MainMenu items
Das erklärt vieles! :]
Zitat:
Gruß Jan |
Re: MainMenu items
Im Mainmenu steuere ich die buttons immer so an:
mainmenu1.items[x].items[x].xxxx... |
Re: MainMenu items
wenn ich ein punkt hinter "connect1" mache seh ich aber optionen, ich mach mal screen
|
Re: MainMenu items
![]() ![]() ich krieg die caption "connect" nicht auf "disconnect" |
Re: MainMenu items
Lass einfach mal die 1 weg.
Also:
Delphi-Quellcode:
Connect.Caption := "disconnect";
|
Re: MainMenu items
ne geht nicht, der name ist ja auch connect1:
![]() ist das n bug? O_o |
Re: MainMenu items
Warum sagst du zuerst, dass der name "Connect" ist, wenn das nicht wahr ist?
Versuch mal 2 sachen:
Delphi-Quellcode:
wenn das nicht klappt weiss ich auch nicht weiter.
(sender as Tmenuitem).caption:='disconnect';
und Mainmenu.items[0].items[0].caption:='disconnect'; Gruß Jan |
Re: MainMenu items
Dann fällt mir noch der Typecast ein:
Delphi-Quellcode:
(Sender as TMenuItem).Caption := 'connect';
|
Re: MainMenu items
Zitat:
hab eure beiden codes (die ja gleich sind) ausprobiert, lässt sich zwar compilieren, aber die caption ändert sich nicht :cry: |
Re: MainMenu items
Was genau meckert er denn überhaupt? Und an welcher Stelle in der Zeile?
- haste auch nicht den ":" vor dem "=" vergessen? - sind die richtigen Gänsefüßchen gesetzt ('')? |
Re: MainMenu items
Zitat:
Zitat:
Gruß Jan |
Re: MainMenu items
moin,
jo, sonst gäbe es ja compilerfehler, die gibt es aber nicht ^^. Also ich möchte "Connect" in "Disconnect" abändern: ![]() das:
Delphi-Quellcode:
scheint auch nicht zu gehen
MainMenu1.Items.Items[0].Items[0].Caption := 'Disconnect';
|
Re: MainMenu items
Also ich hab das Menü mal nachgebaut und da gehts. Wenn de noch keinen Code weiter drin hast, kannste ja mal das Projekt hochladen oder per mail/icq schicken.
Spontan würde ich nur noch sagen, dass dein Element mit Namen 'connect' irgendwo anders liegt und dein MenuItem anders heißt. :gruebel: |
Re: MainMenu items
Ich weiss was... Ich weiss was... *gg*
Hast Du dir schon mal einen Breackpoint gesetzt und dir Angeschaut was in Connect1.Caption steht? Dort steht nämlich "&Connect". Durch AutoHotkeys wird dies von Delphi eingefügt. |
Re: MainMenu items
Kleine dumme Frage: was hat das damit zu tun, daß die Zuweisung net funzt? :gruebel:
|
Re: MainMenu items
Zitat:
Delphi-Quellcode:
Darum hat es etwas damit zu tun. ;-)
if (Connect1.Caption = 'Connect') then
begin Connect1.Caption := 'Disconnect'; end else begin Connect1.Caption := 'Connect'; end; |
Re: MainMenu items
also
Delphi-Quellcode:
geht, aber:
connect1.Caption := 'hi';
Delphi-Quellcode:
nicht, obwohl die caption am anfang "Connect" ist
if connect1.Caption = 'Connect' then
connect1.Caption := 'hi'; |
Re: MainMenu items
Hast du meinen Beitrag gelesen?
|
Re: MainMenu items
Silent, bitte pass besser darauf auf, was du schreibst, und was andere schreiben, das würde viel tippen ersparen :warn:
:hi: Jan |
Re: MainMenu items
ABER: die "&" werden offenbar erst zugewiesen, wenn man das Menu aufklappt.
In meinem Test war das & erst drin, NACHDEM ich das Menü das erste mal aufgeklappt habe. Vorher (direkt nach Programmstart) war es noch net drin. Lösung: "&" sofort der Caption zuweisen und/oder autoHotKeys abschalten. |
Re: MainMenu items
jojo jan :P
@Sharky: stimmt, mit "&Connect" gehts, hm, ich dachte "&" macht einen unterstrich unter den ersten buchstaben danke an alle :) |
Re: MainMenu items
wie setze ich einen breakpoint? den roten punkt vor der zeile? wie seh ich dann das connect ein & davor hat?^^
|
Re: MainMenu items
CTRL Drücken und mit der linken Maustaste auf .Caption klicken.
|
Re: MainMenu items
hoi,
wenn ich strg drücke bekomme ich nur "property Caption: string read FCaption write SetCaption stored IsCaptionStored;" |
Re: MainMenu items
ah sehe schon, vielen dank :)
|
Re: MainMenu items
Außerdem würde ich ned schauen, was in der Caption steht um herauszufinden, in welchem Status sich das programm befindet :-D
Gibt ja schließlich 'ne property "Tag", die sich für sowas mißbrauchen läßt... Oder alternativ den Verbindungsstatus Deiner Connection-Komponente (Scheinst ja 'nen IRC-Client zu basteln). Da könntest OnPopup die Caption änder, je nachdem, ob Du verbunden bist oder ned. LG, MRN |
Alle Zeitangaben in WEZ +1. Es ist jetzt 23:33 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz