AGB  ·  Datenschutz  ·  Impressum  







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

Lokalisierter Name einer Taste

Ein Thema von Prototypjack · begonnen am 21. Okt 2006 · letzter Beitrag vom 24. Okt 2006
Antwort Antwort
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#1

Lokalisierter Name einer Taste

  Alt 21. Okt 2006, 16:50
Moin!

Ich suche eine Möglichkeit die Namen zu VirtualKeys zu bekommen.
Das es geht weiss ich, nur nicht wie.

Ich bin durch Suchen auf die Funktion GetKeyNameText gestossen, kann sie aber nicht wirklich zum laufen bringen, und habe langsam das Gefühl, das sie nicht macht was ich Suche.

Nochmal zur verdeutlichung:

Ich brauche eine Funktion die bei VK_CAPITAL(z.B.) den lokalisierten Namen liefert, also (auf einem deutschen System) "FESTSTELLTASTE".

Ich hoffe ihr könnt mir helfen.
Gruß,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  Mit Zitat antworten Zitat
Reinhard Kern

Registriert seit: 22. Okt 2006
772 Beiträge
 
#2

Re: Lokalisierter Name einer Taste

  Alt 22. Okt 2006, 13:51
Hallo,

so etwas wie einen lokalisierten Tastennamen gibt es nicht, jedenfalls nicht genormt, jeder bezeichnet das nach eigenem Geschmack.

Die Bezeichnung "Feststelltaste" ist ohnehin nicht korrekt, es ist ja nur eine von mehreren Feststelltasten auf der PC-Tastatur (NumLock,ScrollLock).

Je nach Geschmack wird auch nicht alles übersetzt, mir ist jedenfalls Esc geläufiger als Fluchttaste, und auf eine Fenstertaste kann ich auch verzichten.

Gruss Reinhard
  Mit Zitat antworten Zitat
marabu

Registriert seit: 6. Apr 2005
10.109 Beiträge
 
#3

Re: Lokalisierter Name einer Taste

  Alt 22. Okt 2006, 14:41
Hallo Max,

probiere es mal damit:

Delphi-Quellcode:
uses
  Windows;

function GetKeyName(key: Word): String;
var
  scanCode: Integer;
  keyName: array [0..255] of Char;
begin
  ScanCode := MapVirtualKey(key, 0) shl 16;
  SetString(Result, KeyName, GetKeyNameText(scanCode, KeyName, SizeOf(KeyName)));
end;
Grüße vom marabu
  Mit Zitat antworten Zitat
Prototypjack

Registriert seit: 2. Feb 2003
611 Beiträge
 
Delphi 2009 Professional
 
#4

Re: Lokalisierter Name einer Taste

  Alt 24. Okt 2006, 15:07
Zitat von Reinhard Kern:
Hallo,

so etwas wie einen lokalisierten Tastennamen gibt es nicht, jedenfalls nicht genormt, jeder bezeichnet das nach eigenem Geschmack.

Die Bezeichnung "Feststelltaste" ist ohnehin nicht korrekt, es ist ja nur eine von mehreren Feststelltasten auf der PC-Tastatur (NumLock,ScrollLock).

Je nach Geschmack wird auch nicht alles übersetzt, mir ist jedenfalls Esc geläufiger als Fluchttaste, und auf eine Fenstertaste kann ich auch verzichten.

Gruss Reinhard
Falsch.

Danke trotzdem ihr beiden,
ich hatte die letzten Tage keine Zeit hier rein zu sehen,
konnte es aber dennoch lösen. Meine Lösung sieht ein bischen anders aus, funktioniert jedoch auch.

Für die interessierten:
Delphi-Quellcode:
function GetKeyName(const ACharCode: Integer): String;
var
  KeyName: array [0..255] of Char;
  VirtualKey: Cardinal;
begin
  VirtualKey := MapVirtualKeyW(ACharCode, 0);
  GetKeyNameText((VirtualKey shl 16), @KeyName, SizeOf(KeyName));
  Result := KeyName;
end;
Danke für eure Mühen
Gruß,
Max
Max
„If you have any great suggestions, feel free to mail me, and I'll probably feel free to ignore you.“ . Linus Torvalds
  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 09:39 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