Hallo Leute,
Ich habe einen Button wo ich wenn ich draufkliche ein Fenster öffnet mit dem Hilfetext. Blöd ist nur das oben drüber untitled steht.- als Fenster Text. Wie kann ich diesen Text abändern oder auch löschen…also ohne Titel. Beides würde mich interessieren. MessageBox(“Mein Hilfetext”)
Danke
vielleicht ist MessageDialog besser.
https://documentation.xojo.com/api/user_interface/desktop/messagedialog.html
Ich glaube die normale MessageBox zeigt den Haupt Fenster Namen als Titel.
Hast du hier den Namen eingetragen?
Hallo Markus,
danke für deine Tipps. Langsam kapiere ich wie es funktioniert. Ich habe alles einfach in eine Variable gespeichert und dann dort wieder rausgeholt so gehts:
Var message As String
Var TitleMessageBox As String
Title = “Hilfe für Eingabe”
message = "Hier können Sie eine Eingabe für alle Daten der Adresse speichern "
MessageBox(message)
das ist das gleiche wie Self.Title wo du den Fenster Titel schreibst bevor die MSG Box auf geht.
TitleMessageBox ist bei deinem Beispiel unbenutzt.
Irgendetwas kann da nicht stimmen … Wie Markus schon schrieb, erzeugst Du eine Variable TitleMessageBox, die Du dann aber gar nicht verwendest. Dann versuchst Du, einer nicht deklarierten Variablen „Title“ einen Wert zuzuweisen – eigentlich dürfte das gar nicht kompilieren. Und dann rufst Du MessageBox auf, eine Methode, die nichts von einem Titel weiß, aber irgendwie auf Deine nicht deklarierte Variable zugreift? Wie soll das funktionieren?
Wenn ich MessageBox auf dem Mac verwende, bekomme ich ein Fenster ohne Titelleiste – da wird überhaupt kein Titel angezeigt, auch nicht „Untitled“, sondern nur der Text, den man als Argument übergeben hat.
Wenn Du mehr Einfluss auf die Darstellung nehmen willst, solltest Du die Klasse MessageDialog verwenden:
var aMessageWindow as new MessageDialog
aMessageWindow.ActionButton.Caption = "Verstanden!"
aMessageWindow.Message = "Mein Hilfetext"
call aMessageWindow.ShowModal
MessageDialog bietet noch viel mehr Möglichkeiten, so kannst Du weitere Buttons anzeigen (und dann abfragen, welchen Button der Anwender gedrückt hat) und den Hilfetext um eine Erklärung ergänzen. Auch einen Titel kannst Du spezifizieren, der aber nur unter Windows (und Linux) angezeigt wird, nicht jedoch unter macOS.
Verstehe…hmmm aber es funktioniert:
Aber ok dann benutze ich MessageDialog. Danke sehr. Bin eben noch nicht so drin.-Anfänger halt.
Das kommt mit der Zeit.
Versuche jede Zeile zu verstehen was der Compiler machen wuerde, wie es Michael beschrieben hat.
Du könntest auch ein “richtiges” Fenster verwenden, auf dem du ein Textareal mit Scrollbalken und einen OK-Button platzierst. Dieses Help-Fenster wird gleich beim Start der App (im Open-Event) mit hide versteckt und nur bei Bedarf mit show oder showmodal hervorgeholt …
Ich habe einmal eine einfache “Mouse Over”-Hilfe in einem Bereich im Fenster:
Dann gab es mal Code hier aus dem Forum für eine Art interaktiver Tour:
Die Mouse Over-Hilfe ist aber wesentlich einfacher.
Ahhh ok verstehe. Super Idee. Danke sehr. Ich werde das einmal testen.
Hallo Beatrix,
beides würde mich brennend interessieren. Wie mache ich das? Danke.
Den Code für die interactive Tour gibt es hier: GitHub - VanDerLars/xojo-intro: A simple class to create step-by-step intros in Xojo Desktop-Applications . Der Code arbeitet viel mit AddHandler. Dafür ist das relativ einfach einzubinden.
Die Hilfe habe ich mit StackView von @Martin_T gemacht. Kostet 15 Euronen - glaube ich. Die Controls mit MouseOver machen solange ein RaiseEvent MouseOver bis sie im Fenster angekommen sind. Das leitet dann den Hilfetext an den StackView weiter.
Danke sehr