AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

TButton und ShowAccelChar

Ein Thema von OsCor · begonnen am 17. Jan 2022 · letzter Beitrag vom 23. Jan 2022
Antwort Antwort
Seite 1 von 2  1 2      
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#1

TButton und ShowAccelChar

  Alt 17. Jan 2022, 19:01
Delphi-Version: 10.4 Sydney
Hallo liebe Helfer,

bin gerade etwas verwirrt: Beim Erstellen eines Formulars habe ich versucht, die im Titel erwähnte Funktionalität zu nutzen. Am Anfang ging es, d.h. die Unterstriche unter den mit führendem & versehenen Buchstaben der Button.Caption wurden angezeigt. Jetzt plötzlich nicht mehr. Nach einigem Suchen habe ich gesehen, dass ShowAccelChar nur beim Label-Control gesteuert werden kann - und bei TButton anscheinend nicht.
Ich habe mir vor vielen Jahren (2007) das Buch Delphi 7 von Doberenz und Gewinnus gekauft. Da habe ich jetzt nochmal reingeschaut und festgestellt, dass viele Beispieldarstellungen von Buttons diese unterstrichenen Buchstaben anzeigen. Also war das doch keine Halluzination.
Nachdem die allermeisten Fragen zum & in diesem Forum die reine Darstellungsweise zum Thema hatten, möchte ich diese Frage doch mal stellen. Vielleicht geht es mir besser als dem Forumsteilnehmer, der 2017 eine solche Frage für eine Radiobuttongruppe hatte, auf die es anscheinend keine Antwort gab.

Gruß
Oswald
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#2

AW: TButton und ShowAccelChar

  Alt 17. Jan 2022, 20:17
Das Verhalten wird durch Windows gesteuert. Standardmäßig werden die AccelChars von grafischen Controls wie Menüs, Popup-Menüs, Checkboxen, Buttons usw. erst nach dem Drücken der ALT-Taste angezeigt. In den Eingabehilfen von Windows (Systemsteuerung bzw. Einstellungen-App) kann man einstellen, ob diese immer angezeigt werden sollen.

Grüße
Dalai
  Mit Zitat antworten Zitat
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: TButton und ShowAccelChar

  Alt 17. Jan 2022, 20:43
Tatsächlich, wenn man die Alt-Taste drückt, erscheinen die Unterstriche. Das macht aber eigentlich noch nicht so richtig Sinn, also muss ich rauskriegen, wie ich diese Anzeige aktivieren kann, ohne die Alt-Taste zu benötigen.
Klasse Tipp!

Gruß
Oswald
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.293 Beiträge
 
Delphi 12 Athens
 
#4

AW: TButton und ShowAccelChar

  Alt 18. Jan 2022, 06:52
Nja Sinn ... Mann Win denkt halt, dass Maus und vorallem Touch das Beste ist und niemand die Tastatur braucht.

Diese Option besagt nur, ob das Control grundsätzlich das Tastenkürzel anzeigen soll, oder eben "garnicht".
Windows regelt dann, "wann" das nun angezeigt wird, also standardmäßig nur bei ALT.
Und der Nutzer (welcher oftmals von dieser Option garnichts weiß), kann dann entscheigen (falls er es erfährt), ob er es nicht doch wieder "immer" sehen will, so wie es im letzten Jahrtausend mal war.


Man könnte mal im Unicode nachsehn (hab grad nichts gefunden, aber dachte mir, dass es sowas doch geben muß), ob es eine überschreibende Version von _ gibt.



[edit]
Na endlich, schaut man beim "Hersteller" und nicht bei dem Schrott, der bei Google und Co. aktuell auf Seite 1 gelistet wird, dann
https://www.unicode.org/charts/PDF/U0000.pdf

005F _ LOW LINE
02CD ˍ   modifier letter low macron

Ein ˍUnterstrich

'Ein '#$2CD'Unterstrich' = Ein ˍUnterstrich

bzw. vermutlich 'Ein '#$2CD'_Unterstrich'
Nur solltest du dann ShowAccelChar wohl besser abschalten, damit _ nicht eventuell doppelt vorkommt




alternativ https://util.unicode.org/UnicodeJsps...old%20symbols}
nur darfst dich das dann mit Surrogates auseinander setzen.
so geht es ja nicht 'Als '#$1D405'ett' , weil größer 16 Bit

'Als '#$D875#$DC05'ett' = Als 𝐅ett

Und einen passenden Font brauchst'e leider auch, (meistens, im Delphi genutzt, oder als Replacement im Windows registriert)
da es bei den Surrogates seit 20 Jahren noch etwas hängt.
Wie du siehst, das Forum und der Browser können es (falls du es dort siehst).
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (18. Jan 2022 um 07:16 Uhr)
  Mit Zitat antworten Zitat
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: TButton und ShowAccelChar

  Alt 18. Jan 2022, 19:05
Oha, das ist mir doch etwas viel Aufwand. Schade, ich habe mir bei vielem angewöhnt, Tastaturbefehle zu nutzen.

Ich danke euch!
Oswald
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.293 Beiträge
 
Delphi 12 Athens
 
#6

AW: TButton und ShowAccelChar

  Alt 18. Jan 2022, 21:34
Wie gesagt.
Einfach im Windows das aktivieren, dann siehst DU es immer.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests
  Mit Zitat antworten Zitat
peterbelow

Registriert seit: 12. Jan 2019
Ort: Hessen
678 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: TButton und ShowAccelChar

  Alt 21. Jan 2022, 15:55
Hallo liebe Helfer,

bin gerade etwas verwirrt: Beim Erstellen eines Formulars habe ich versucht, die im Titel erwähnte Funktionalität zu nutzen. Am Anfang ging es, d.h. die Unterstriche unter den mit führendem & versehenen Buchstaben der Button.Caption wurden angezeigt. Jetzt plötzlich nicht mehr. Nach einigem Suchen habe ich gesehen, dass ShowAccelChar nur beim Label-Control gesteuert werden kann - und bei TButton anscheinend nicht.
Ich habe mir vor vielen Jahren (2007) das Buch Delphi 7 von Doberenz und Gewinnus gekauft. Da habe ich jetzt nochmal reingeschaut und festgestellt, dass viele Beispieldarstellungen von Buttons diese unterstrichenen Buchstaben anzeigen. Also war das doch keine Halluzination.
Nachdem die allermeisten Fragen zum & in diesem Forum die reine Darstellungsweise zum Thema hatten, möchte ich diese Frage doch mal stellen. Vielleicht geht es mir besser als dem Forumsteilnehmer, der 2017 eine solche Frage für eine Radiobuttongruppe hatte, auf die es anscheinend keine Antwort gab.

Gruß
Oswald
Versuch mal

Delphi-Quellcode:
var
  B : BOOL;

B:= True;
SystemParametersInfo(SPI_SETKEYBOARDCUES, 0, @B, 0);
Peter Below
  Mit Zitat antworten Zitat
Benutzerbild von Dalai
Dalai

Registriert seit: 9. Apr 2006
1.680 Beiträge
 
Delphi 5 Professional
 
#8

AW: TButton und ShowAccelChar

  Alt 21. Jan 2022, 17:49
Die Funktion SystemParametersInfo zum Setzen von Einstellungen zu benutzen, kann man vielleicht tun, wenn man die Software nur auf dem eigenen System verwendet. Aber ich empfinde es als NoGo, wenn man dies in einer Software tut, die bei anderen Leuten laufen soll. Der Nutzer hat immer irgendwelche Gründe, warum bestimmte Dinge auf dem System oder im Nutzerprofil so eingestellt sind wie sie eingestellt sind.

Nur mal ein kurzer Abschweif, warum ich das so sehe. Es gibt ein Total Commander Plugin, das bis vor einigen Jahren das Smoothscrolling von Listboxen im Windows aktivierte, sobald das Plugin geladen wurde. Smoothscrolling von Listboxen ist auf allen Systemen, die ich installiere, deaktiviert, weil dieses "Feature" für mich weder sinnvoll noch nötig sondern eher hinderlich ist.
Das beeinflusst(e) - weil das eine globale Einstellung für das Nutzerprofil ist - alle (Standard-Windows) Listboxen in allen Programmen. So war es nicht nur im Total Commander und dessen Listboxen aktiv sondern auch im PuTTY, in allen Standard-Schriftauswahl-Dialogen usw. usf.

Zum Glück behob der Autor des Plugins das irgendwann und vermerkte das sogar im Changelog. Aber genervt hat mich das lange Zeit. Es hatte Monate gedauert, bis ich herausfand, dass es von diesem Plugin verursacht wird, weil das Smoothscrolling sich nur unregelmäßig aktivierte, weil das Plugin natürlich nicht immer benutzt wurde.

Nichtsdestotrotz kann man die Keyboard Indicators damit (einmalig) aktivieren, falls man die Einstellung in der Systemsteuerung bzw. der Einstellungen-App nicht findet.

Grüße
Dalai
  Mit Zitat antworten Zitat
OsCor

Registriert seit: 1. Jan 2009
Ort: Kenzingen, Südbaden
99 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: TButton und ShowAccelChar

  Alt 22. Jan 2022, 20:34
Ich habe jetzt beide Lösungsversisonen ausprobiert. Da ich die Software hauptsächlich für meine eigenen Zwecke nutzen werde, sollte die Benutzung der Windows-Funktion kein Problem darstellen. Aber die Langversion von KodeZwerg werde ich in petto halten. Dabei habe ich aber noch nicht verstanden, was „Ziel angeben” bedeutet. Vielleicht kann mir KodeZwerg das noch erklären?

Wenn man nicht immer zwischen Tastatur und Maus hin und her springen will, ist Alt+ sehr hilfreich - zumal, wenn man wie ich immer mal wieder unter einem „Mausarm” leidet.

Vielen Dank einstweilen!
Oswald
  Mit Zitat antworten Zitat
Benutzerbild von KodeZwerg
KodeZwerg

Registriert seit: 1. Feb 2018
3.691 Beiträge
 
Delphi 11 Alexandria
 
#10

AW: TButton und ShowAccelChar

  Alt 22. Jan 2022, 23:29
Dabei habe ich aber noch nicht verstanden, was „Ziel angeben” bedeutet. Vielleicht kann mir KodeZwerg das noch erklären?
Ich verstehe die Frage nicht ganz. "Ziel angeben" kommt nirgendwo vor im Quelltext.
Mein Quelltext angewandt auf einem Formular Handle macht was du wolltest, das Formular (inklusive TButton) zeigt den AccelChar.
Ich wäre auch ein Gegner davon Systemeinstellungen einfach so zu ändern aber es ist ja nur für Dich.

Es ist besser du kopierst betreffende Zeile und ich erkläre sie Dir gerne.

(Mein Quelltext verändert nichts, er simuliert lediglich das drücken der Alt Taste gefolgt von einer Escape Taste.)
Gruß vom KodeZwerg
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 02:05 Uhr.
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