AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein GUI-Design mit VCL / FireMonkey / Common Controls Delphi Button überspringt OnKeyDown bei VK_Up / VK_Down
Thema durchsuchen
Ansicht
Themen-Optionen

Button überspringt OnKeyDown bei VK_Up / VK_Down

Ein Thema von Aike · begonnen am 20. Apr 2007 · letzter Beitrag vom 24. Apr 2007
Antwort Antwort
Seite 2 von 2     12   
Aike

Registriert seit: 2. Okt 2004
319 Beiträge
 
#11

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 21. Apr 2007, 08:35
TTabControl lässt sich allerdings nicht in eine Horizontale zwängen, weswegen die Button-Lösung die richtige ist ;-p
Achim
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#12

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 21. Apr 2007, 16:23
Komisch, sowohl TabControl als auch PageControl lassen sich bei mir umschalten. Dabei wird die Schrift auch noch vertikal geschrieben.
  Mit Zitat antworten Zitat
Aike

Registriert seit: 2. Okt 2004
319 Beiträge
 
#13

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 23. Apr 2007, 17:15
Huch, die Eigenschaft TabPosition hab ich gar nicht gesehen. Allerdings ist eine vertikale Schrift alles andere als der Übersichtlichkeit dienlich. Darum ist meine Lösung doch die richtige, solange es keine Lösung gibt, die meine Buttons (o.ä.) in einer vertikalen Anordnung aber mit horizontaler Schrift bietet.
Achim
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.643 Beiträge
 
Delphi 11 Alexandria
 
#14

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 10:16
Das würde mich jetzt aber doch interessieren.

Kann man irgend wie erzwingen, die Nachrichten VK_DOWN und VK_UP vor den Buttons zu erhalten. Auch wenn es, wie es scheint, gegen das Windowsstandardverhalten ist. In bestimmten Dialogen möchte ich nicht, das mit den Pfeiltasten zwischen den Buttons herumgesprungen wird, sondern eine andere Aktion durchgeführt wird. Und das klappt eben nicht, wenn die Buttons gerade den Fokus haben. Dann kommen die Events nicht mehr durch.
Sven Harazim
--
  Mit Zitat antworten Zitat
Robert Marquardt
(Gast)

n/a Beiträge
 
#15

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 10:37
Erzwingen kann man das schon (ein Memo oder Edit machen das ja), aber man verliert dabei die Navigation zwischen den Buttons.
  Mit Zitat antworten Zitat
Benutzerbild von sh17
sh17

Registriert seit: 26. Okt 2005
Ort: Radebeul
1.643 Beiträge
 
Delphi 11 Alexandria
 
#16

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 10:41
Zitat von Robert Marquardt:
aber man verliert dabei die Navigation zwischen den Buttons.
Das macht in diesem Fall nichts.
Sven Harazim
--
  Mit Zitat antworten Zitat
Benutzerbild von Lannes
Lannes

Registriert seit: 30. Jan 2005
Ort: Münster
745 Beiträge
 
Delphi 3 Professional
 
#17

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 12:01
Hallo,

Checkbox = Button:
Checkbox / KeyDown, KeyPress, KeyUp | Beitrag #6 oder #7
MfG Lannes
(Nichts ist nicht Nichts) and ('' <> nil ) and (Pointer('') = nil ) and (@('') <> nil )
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#18

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 13:21
Zitat von Aike:
Huch, die Eigenschaft TabPosition hab ich gar nicht gesehen. Allerdings ist eine vertikale Schrift alles andere als der Übersichtlichkeit dienlich. Darum ist meine Lösung doch die richtige, solange es keine Lösung gibt, die meine Buttons (o.ä.) in einer vertikalen Anordnung aber mit horizontaler Schrift bietet.
Hi,

man könnte die Schrift jedoch selber zeichnen,
Delphi-Quellcode:
 procedure TForm1.FormCreate(Sender: TObject);
begin
  TabControl1.OwnerDraw := true;
  TabControl1.TabPosition := tpLeft;
  TabControl1.TabWidth := 25;
  TabControl1.TabHeight := 75;
end;

procedure TForm1.TabControl1DrawTab(Control: TCustomTabControl;
  TabIndex: Integer; const Rect: TRect; Active: Boolean);
begin
  if Control is TTabControl then
    TTabControl(Control).Canvas.TextOut((Rect.Right - Rect.Left -
    TTabControl(Control).Canvas.TextWidth(TTabControl(Control).Tabs[TabIndex])) div 2,
    Rect.Top + (Rect.Bottom- Rect.Top -
    TTabControl(Control).Canvas.TextHeight(TTabControl(Control).Tabs[TabIndex])) div 2,
    TTabControl(Control).Tabs[TabIndex]);
end;
ob das ein zufriedenstellendes Ergebnis ist, ist natürlich Ansichtssache.

EDIT: Der Fehler wurde behoben, dass alle Taps die selbe Caption haben.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Aike

Registriert seit: 2. Okt 2004
319 Beiträge
 
#19

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 14:23
Das sieht doch schonmal sehr nett aus, aber die Tabs haben jetzt alle die selbe Caption :-/
Achim
  Mit Zitat antworten Zitat
Benutzerbild von bitsetter
bitsetter

Registriert seit: 17. Jan 2007
1.169 Beiträge
 
Turbo Delphi für Win32
 
#20

Re: Button überspringt OnKeyDown bei VK_Up / VK_Down

  Alt 24. Apr 2007, 21:54
Den Code habe ich jetzt abgeändert, es lag wohl an with TTabControl(Control) do jetzt müsste es eigentlich funktionieren.
Gruß bitsetter
"Viele Wege führen nach Rom"
Wolfgang Mocker (geb. 1954), dt. Satiriker und Aphoristiker
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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 11:57 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