AGB  ·  Datenschutz  ·  Impressum  







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

OnKeyDown TShiftState und Key

Ein Thema von rokli · begonnen am 23. Nov 2010 · letzter Beitrag vom 25. Nov 2010
Antwort Antwort
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#1

OnKeyDown TShiftState und Key

  Alt 23. Nov 2010, 10:22
Moin zusammen!

Habe gerade die schwarze Brille auf:

Delphi-Quellcode:
  // Stg-S = speichern
  if (ssShift in Shift) and
     ((Key = 115) or (Key = 83)) then begin // <--- das krieg ich nicht mit
      if savSQL.Execute then begin
         rieSQL.Lines.SaveToFile(savSQL.FileName);
      end;
  end;
führt nicht zum Ziel

Delphi-Quellcode:
  // Stg-S = speichern
  if (ssShift in Shift) tehn begin
    if ((Key = 115) or (Key = 83)) then begin // < --- hier liegt mein Prob
      if savSQL.Execute then begin
         rieSQL.Lines.SaveToFile(savSQL.FileName);
      end;
      end;
  end;
geht leider genauso wenig

Mein Problem: ich bekomme die Abfrage vom Buchstaben 'S' nicht hin. Wenn ich das Tasstaturergebnis mit

  stbMain.Panels[5].Text   := ShortCutToText(ShortCut(Key, Shift)); auslese ist alles klar ...

Kann mir jemand helfen, das ich Strg-S korrekt ansteuere??

Vielen Dank
Rolf
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney

Geändert von rokli (23. Nov 2010 um 10:33 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von mleyen
mleyen

Registriert seit: 10. Aug 2007
609 Beiträge
 
FreePascal / Lazarus
 
#2

AW: OnKeyDown TShiftState und Key

  Alt 23. Nov 2010, 10:27
Delphi-Quellcode:
  if (ssCtrl in Shift) and (Key = 83) then
    MessageDlg('didumm', mtInformation, [mbOK], 0);
ssCtrl <-> ssShift
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: OnKeyDown TShiftState und Key

  Alt 23. Nov 2010, 10:39
@meylen

ok - die Brille war TIEF-SCHWARZ ... da kann ich lange auf CTRL drücken, wenn ich SHIFT abfrage!



Vielen DANK!
Rolf
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: OnKeyDown TShiftState und Key

  Alt 23. Nov 2010, 10:40
und jetzt auch noch den Namen falsch geschrieben

SORRY Marcel
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  Mit Zitat antworten Zitat
Benutzerbild von mleyen
mleyen

Registriert seit: 10. Aug 2007
609 Beiträge
 
FreePascal / Lazarus
 
#5

AW: OnKeyDown TShiftState und Key

  Alt 23. Nov 2010, 10:49
Kein Problem

2 Kleinigkeiten noch:
1. 115 ist VK_F4 und nicht das 'kleine s'.
2. Die 'saubere' Methode Buchstaben abzufragen wäre über Delphi-Referenz durchsuchenVkKeyScan
So muss man auch nicht immer die ASCII-Codes überprüfen und verhindert Fehler wie in 1.
if (ssCtrl in Shift) and (Key = VkKeyScan('s')) then
  Mit Zitat antworten Zitat
rokli

Registriert seit: 21. Mär 2009
Ort: Rödinghausen
301 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: OnKeyDown TShiftState und Key

  Alt 25. Nov 2010, 11:20
bin nochmal wieder mit einer Frage zum OnKeyDown da:

Delphi-Quellcode:
procedure TfraSQL.rieSQLKeyDown(Sender: TObject; var Key: Word;
  Shift: TShiftState);
begin
   tag := 5;
   if Key = Vk_F5 then begin
      rieSQL.SelectAll;      // <--- das geht!
   end;
   if (ssCtrl in Shift) and (Key = VkKeyScan('a')) then begin
   tag := 5;
      rieSQL.SelectAll;      // <--- das geht NICHT ?!?
   end;
end;
Dieses OnKeyDown befindet sich in einem FRAME!!

Warum kann ich mit 'F5' alles wie gewünscht markieren, aber mit CTRL-a nicht???

Hat da jemand ne Idee?

Tks Rolf
Rolf
wenn nicht anders angegeben, schreibe ich zu D7, XE2 und MS SQL - ansonsten fragen Sie ihren Administrator oder einen Operator. Update 06/2020: Delphi 10.4 Sydney
  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:14 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