Code: |
{ With menus (and labels), If you use the '&' character in the caption of a menu, you can access that menu item with the short cut key. With this code you can do the same thing with TTabSheet objects that are used with TPageControl objects.
Zugriffstasten ermoglichen die Ausfuhrung eines Menubefehls mit Hilfe der Tastatur. Der Benutzer braucht nur die Taste Alt und den mit dem Zeichen & kombinierten Buchstaben zu drucken.
Dieser code erlaubt dieselebe Funktionalitat fur ein TTabSheet eines TPageControls. }
// in form declaration private procedure CMDialogChar(var Msg: TWMCHAR); message CM_DIALOGCHAR; end;
type TPageControlCracker = class(TPageControl);
{...}
implementation
procedure TForm1.CMDialogChar(var Msg: TWMCHAR); var i: Integer; begin if (Msg.keydata and $20000000) <> 0 then begin { Alt key is down } with TPageControlCracker(PageControl1) do for i := 0 to PageCount - 1 do begin if IsAccel(Msg.charcode, Pages[i].Caption) then begin if CanChange then begin ActivePage := Pages[i]; Msg.Result := 1; Change; Exit; end; { If } end; { If } end; {For} end; {If} inherited; end; |
TPageControl, расположенный на закладке палитры компонентов, в настоящий момент не может работать с акселераторами. Тем не менее, в наших силах создать потомок TPageControl, поддерживающий вышеназванную характеристику.
Просьба писать ваши замечания, наблюдения и все остальное,
что поможет улучшить предоставляемую информацию на этом сайте.
ВСЕ КОММЕНТАРИИ МОДЕРИРУЮТСЯ ВРУЧНУЮ, ТАК ЧТО СПАМИТЬ БЕСПОЛЕЗНО!