AGB  ·  Datenschutz  ·  Impressum  







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

Str gedrückt?

Ein Thema von EineFrage9922 · begonnen am 13. Okt 2008 · letzter Beitrag vom 14. Okt 2008
Antwort Antwort
EineFrage9922

Registriert seit: 13. Okt 2008
1 Beiträge
 
#1

Str gedrückt?

  Alt 13. Okt 2008, 21:23
Hallo
Wie frage ich ab, ob die Steuerung Taste gerade gedrückt ist?
Also ein Button soll bei gedrücktem Str eine andere Funktion bekommen!
  Mit Zitat antworten Zitat
Benutzerbild von turboPASCAL
turboPASCAL

Registriert seit: 8. Mai 2005
Ort: Sondershausen
4.274 Beiträge
 
Delphi 6 Personal
 
#2

Re: Str gedrückt?

  Alt 13. Okt 2008, 21:31
Delphi-Quellcode:
procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Shift = [ssCtrl]
    then mach_was_anderes := TRUE
    else mach_was_anderes := FALSE;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
  if mach_was_anderes then NoCtrlKey
    else JuppCtrlKey;
end;
So was ?
Matti
Meine Software-Projekte - Homepage - Grüße vom Rüsselmops -Mops Mopser
  Mit Zitat antworten Zitat
Benutzerbild von toms
toms
(CodeLib-Manager)

Registriert seit: 10. Jun 2002
4.648 Beiträge
 
Delphi XE Professional
 
#3

Re: Str gedrückt?

  Alt 13. Okt 2008, 21:31
Hallo

Das kannst du allgemein mit GetKeyboardState abfragen (Edit: oder in diesem Fall so wie Matti)

Delphi-Quellcode:
function CtrlPressed : Boolean;
var
  KeybdState: TKeyboardState;
begin
  GetKeyboardState(KeybdState);
  Result := ((KeybdState[VK_CONTROL] and 128) <> 0);
end;
Thomas
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#4

Re: Str gedrückt?

  Alt 13. Okt 2008, 23:22
Zitat von turboPASCAL:
Delphi-Quellcode:
procedure TForm1.Button1KeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
  if Shift = [ssCtrl]
    then mach_was_anderes := TRUE
    else mach_was_anderes := FALSE;
end;
Oder einfacher
  mach_was_anderes := Shift = [ssCtrl];
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
Namenloser

Registriert seit: 7. Jun 2006
Ort: Karlsruhe
3.724 Beiträge
 
FreePascal / Lazarus
 
#5

Re: Str gedrückt?

  Alt 14. Okt 2008, 03:14
Wobei das nur funktioniert, wenn NUR Strg gedrückt ist, aber nicht noch zusätzlich Alt oder Shift.

das hier funktioniert auch, wenn noch andere tasten gedrückt sind:
mach_was_anderes := ssCtrl in Shift;
  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: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