Jako, że jestem początkujący proszę o pomoc. Mój problem polega na tym aby program obsługiwał skróty klawiszowe. Skróty klawiszowe typu CTRL + A - zaznacza wszystko, CTRC + C - kopiuje itd. Z góry dziękuję.
wiesz co to inspektor obiektów i podstawowe słowa z j. ang ?
Hydrant napisał(a)
Mój problem polega na tym aby program obsługiwał skróty klawiszowe.
Mało precyzyjnie zadajesz pytania; Skróty klawiszowe można obsługiwać na wiele sposobów i w wielu mniejscach je definiować; Wszystko zależy od tego, czy te skróty ma obsługiwać formularz, czy kontrolki; Jeżeli kontrolki to też trzeba patrzyć na to, czy istnieją do tego celu specjalne właściwości, czy nie; Tak jak to ma miejsce np. w kontrolce z klasy TMainMenu
, gdzie poszczególnym pozycjom w tym menu można nadać skrót klawiszowy odpowiednio wpisując go do właściwości Shortcut
; Niestety mało komponentów ma taką właściwość;
Jeżeli np. chcesz skrótami klawiszowymi obsługiwać jakiś komponent, który nie posiada wewnętrznej ich obsługi, możesz sprzężyć go z TPopupMenu
, w którym ustalisz te skróty i nie będziesz musisał ręcznie ich oprogramowywać; Wystarczy, że odpowiednio będziesz przestawiał właściwość Enabled
w pozycjach, które mają być zablokowane w danej sytuacji; Proste rozwiązanie i mniej czasochłonne;
Oczywiście można też zarządzać skrótami klawiszowymi z poziomu zdarzenia OnKeyDown
zarówno formularza jak i konkretnych kontrolek, ale musisz wtedy ręcznie sprawdzać wszystkie możliwości, jakie trzeba będzie obsłużyć; W każdym razie w tym zdarzeniu masz kilka argumentów, które przechowują kod klawisza oraz stan wciśniętych dodatkowych klawiszy takich jak np. Shift
, Alt
czy Ctrl
; Więc jeżeli będziesz chciał obsłużyć w tym zdarzeniu skrót Ctrl+A
, będziesz musisał sprawdzić, czy kod klawisza a argumencie Key
jest równy literze A
, a także czy parametr ShiftState
przechowuje wciśnięty Ctrl
;
Możliwości jest wiele, ale trzeba wiedzieć dokładnie co chcesz osiągnąć żeby napisać więcej; Podaj więcej szczegółów to dostaniesz bardziej konkretną odpowiedź;
Już rozwiązałem swój problem, dzięki za pomoc. ;)
Zarejestruj się i dołącz do największej społeczności programistów w Polsce.
Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.