AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Projekte TTranslateShortCutText Komponente / Unit
Thema durchsuchen
Ansicht
Themen-Optionen

TTranslateShortCutText Komponente / Unit

Ein Thema von toms · begonnen am 27. Sep 2008 · letzter Beitrag vom 5. Jan 2011
Antwort Antwort
Benutzerbild von toms
toms
Registriert seit: 10. Jun 2002
Hi

Ursprung der Komponente TTranslateShortCutText ist eine Frage aus diesem Beitrag

Zitat:
Ich habe ein Prog, daß es auch auf englisch geben soll. Allerdings läßt sich mein Delphi nicht überreden aus dem Shortcut strg + pfeil nach oben in einem Menüeintrag, ctrl+up arrow, oder soetwas zu machen.
Bezeichnungen von Shortcuts ändern, aber wie?

Entstanden ist eine TTranslateShortCutText Komponente v1.10

Funktion: Übersetzung der Shortcut Bezeichnungen z.B im TMainMenu, TPopupMenu etc.
Vordefinierte Sprachen: Deutsch, Englisch

Getestet unter D5, D6, D2009.

Weitere Informationen in sind in der unit TranslateShortCutText zu finden.

Die Komponente kann installiert werden oder wer dies nicht mag erzeugt eine Instanz zur Laufzeit.



Delphi-Quellcode:
var
  TranslateShortCutText1 := TTranslateShortCutText;
begin
  TranslateShortCutText1 := TTranslateShortCutText.Create(Self);
Bezeichnungen der Shortcut auf English stellen.
Delphi-Quellcode:

  TranslateShortCutText1.Language := lgSCEnglish;

Delphi-Quellcode:
  // oder Eigene Shortcut Bezeichnungen zuweisen:
  with TranslateShortCutText1 do
  begin
    Key_Backspace := 'MyBackspace';
    Key_Tabulator := 'Tab';
    Key_Return := 'Enter';
    Key_Escape := 'Esc';
    Key_Space := 'Space';
    Key_Prior := 'PgUp';
    Key_Next := 'PgDn';
    Key_End := 'End';
    Key_Home := 'Home';
    Key_Left := 'Left';
    Key_Up := 'Up';
    Key_Right := 'Right';
    Key_Down := 'Down';
    Key_Insert := 'Insert';
    Key_Delete := 'Del';
    Key_Alt := 'Alt+';
    Key_Ctrl := 'Ctrl+';
    Key_Shift := 'Shift+';
    RefreshMenuItems;
  end;
Verbesserungsvorschläge bitte mir senden, Ideen sind Willkommen !
Angehängte Dateien
Dateityp: zip translateshortcuttext_186.zip (241,6 KB, 93x aufgerufen)
 
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#2
  Alt 16. Nov 2008, 16:38
Nachfrage: Konnte die Unit irgendjemand brauchen (oder gibt's eine einfachere / bessere Möglichkeit) ?
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#3
  Alt 16. Nov 2008, 16:54
Also eine einfachere Möglichkeit, wie du es gemacht hast, fällt mir nicht ein. Ich hab das bei mir ähnlich gelöst: ich hab auch die Funktion "ShortCutToText" auf eine eigene Funktion umgeleitet. Die Funktion habe ich komplett aus der Menus.pas übernommen - das einzige was ich gemacht habe, ist das array mit den ShortCutTexten in der neuen Unit nochmal zu deklarieren - jedoch im Interface-Teil und nicht im Implementation-Teil, so dass ich den Inhalt einfach über die Multi-Language-Unit beliebig verändern kann.

Das gleiche habe ich auch noch mit der MessageDlg-Funktion gemacht. Das hab ich gemacht, um die Captions (mtWarning, mtInformation, ...) und die Button-Captions zu ändern. Das könntest du ja auch noch mit Einbauen.
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#4
  Alt 22. Nov 2008, 09:13
Zitat von littleDave:
Das gleiche habe ich auch noch mit der MessageDlg-Funktion gemacht. Das hab ich gemacht, um die Captions (mtWarning, mtInformation, ...) und die Button-Captions zu ändern. Das könntest du ja auch noch mit Einbauen.
Wenn du möchtest, kannst du mir ja den Source Code zukommen lassen, dann kann ich das mal einbauen.
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von littleDave
littleDave

 
Delphi 7 Professional
 
#5
  Alt 23. Nov 2008, 15:37
Zitat von toms:
Zitat von littleDave:
Das gleiche habe ich auch noch mit der MessageDlg-Funktion gemacht. Das hab ich gemacht, um die Captions (mtWarning, mtInformation, ...) und die Button-Captions zu ändern. Das könntest du ja auch noch mit Einbauen.
Wenn du möchtest, kannst du mir ja den Source Code zukommen lassen, dann kann ich das mal einbauen.
Klar, kann ich machen, jedoch nicht vor Dienstag abend - wahrscheinlich noch später. Aber ich werd drann denken
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#6
  Alt 6. Jan 2009, 19:38
Zitat von littleDave:
Klar, kann ich machen, jedoch nicht vor Dienstag abend - wahrscheinlich noch später. Aber ich werd drann denken
Welchen Dienstag hast du gemeint
Thomas
  Mit Zitat antworten Zitat
Marco Steinebach

 
Delphi 5 Enterprise
 
#7
  Alt 26. Feb 2009, 11:41
Hallo,
Zitat von toms:
Nachfrage: Konnte die Unit irgendjemand brauchen (oder gibt's eine einfachere / bessere Möglichkeit) ?
Ich hab die Komponente bei mir eingebunden und kann sie, sehr gut sogar, gebrauchen.
Vielen Dank dafür!!!
Verbesserungsvorschläüge hab ich keine!
Viele Grüße
Marco
Marco Steinebach
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#8
  Alt 26. Feb 2009, 20:26
Zitat von Marco Steinebach:
Hallo,
Zitat von toms:
Nachfrage: Konnte die Unit irgendjemand brauchen (oder gibt's eine einfachere / bessere Möglichkeit) ?
Ich hab die Komponente bei mir eingebunden und kann sie, sehr gut sogar, gebrauchen.
Vielen Dank dafür!!!
Verbesserungsvorschläüge hab ich keine!
Viele Grüße
Marco
Danke für das positive Feedback! Dann habe ich die Komponente / Unit ja nicht ganz vergebens gemacht...
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von uligerhardt
uligerhardt

 
Delphi 2007 Professional
 
#9
  Alt 5. Jan 2011, 09:51
Erstmal danke für die Komponente!

Ein paar Fragen/Anmerkungen habe ich:
  1. Funktioniert das Patchen/Hooken/??? von ShortCutToText auch unter neueren Windows? Wegen Data Execution Prevention etc.
  2. Die Lösung mit der hartkodierten Sprachaufzählung gefällt mir nicht so. Da wäre mir etwas "Dynamischeres" lieber.
  3. Toll wäre, wenn man die Übersetzungen direkt vom Betriebssystem kriegen könnte. Da bin ich gerade auf der Suche (http://www.delphipraxis.net/157237-l...ml#post1072322).
  4. Vielleicht sollte man der Vollständigkeit halber auch TextToShortCut ersetzen.
Uli Gerhardt

Geändert von uligerhardt ( 5. Jan 2011 um 10:13 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms

 
Delphi XE Professional
 
#10
  Alt 5. Jan 2011, 20:35
Erstmal danke für die Komponente!

Ein paar Fragen/Anmerkungen habe ich:
  1. Funktioniert das Patchen/Hooken/??? von ShortCutToText auch unter neueren Windows? Wegen Data Execution Prevention etc.
  2. Die Lösung mit der hartkodierten Sprachaufzählung gefällt mir nicht so. Da wäre mir etwas "Dynamischeres" lieber.
  3. Toll wäre, wenn man die Übersetzungen direkt vom Betriebssystem kriegen könnte. Da bin ich gerade auf der Suche (http://www.delphipraxis.net/157237-l...ml#post1072322).
  4. Vielleicht sollte man der Vollständigkeit halber auch TextToShortCut ersetzen.
1) die Funktion wird nicht systemweit gepatcht, das System kommt dir also nicht in die Quere
2) Die Idee dahinter: Wenn ein Programm Englisch und Deutsch anbietet, kann man direkt dir entsprechende Sprache wählen. Die Bezeichnungen können jedoch auch benutzerdefiniert geändert werden.
3+4) Gute Idee.
Thomas
  Mit Zitat antworten Zitat
Antwort Antwort


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 12:54 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