Работа с железом
Code: |
function GettingKeybType: string; var Flag: integer; begin Flag:=0; Case GetKeyboardType(Flag) of 1: Result:='IBM PC/XT or compatible (83-key) keyboard'; 2: Result:='Olivetti "ICO" (102-key) keyboard'; 3: Result:='IBM PC/AT (84-key) or similar keyboard'; 4: Result:='IBM enhanced (101- or 102-key) keyboard'; 5: Result:='Nokia 1050 and similar keyboards'; 6: Result:='Nokia 9140 and similar keyboards'; 7: Result:='Japanese keyboard'; end; end; |
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Приведённая здесь функция делает копию изображения экрана и сохраняет её в буфере обмена (Clipboard). Так же необходимо включить в Ваш проект файл ClipBrd.pas.
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Code: |
function InsertOn: Boolean; begin {©Drkb v.3}
Result:=LowOrderBitSet(GetKeyState(VK_INSERT)); end; |
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Использование клавиш для управления компонентами
Автор: Robert Wittig
Так, если у меня есть своего рода кнопка (check, radio, speed и т.п.), то почему я не могу с помощью клавиш курсора управлять ею?
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Все потомки TComponent могут посылать сообщения CM_MOUSEENTER и CM_MOUSELEAVE во время вхождения и покидания курсора мыши области компонента. Если вам необходимо, чтобы ваши компоненты обладали реакцией на эти события, необходио написать для них соответствующие обработчики.
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Мышка
Code: |
procedure TForm1.AppOnMessage(var Msg: TMsg; var Handled: Boolean); var ccode: Word; begin case Msg.Message of WM_KEYDOWN, WM_KEYUP: begin if (GetKeyState(VK_NUMLOCK) >= 0) {NumLock not active} and ((Msg.lParam and $1000000) = 0) {not a gray key} then begin ccode := 0; case Msg.wParam of VK_HOME: ccode := VK_NUMPAD7; VK_UP: ccode := VK_NUMPAD8; VK_PRIOR: ccode := VK_NUMPAD9; VK_LEFT: ccode := VK_NUMPAD4; VK_CLEAR: ccode := VK_NUMPAD5; VK_RIGHT: ccode := VK_NUMPAD6; VK_END: ccode := VK_NUMPAD1; VK_DOWN: ccode := VK_NUMPAD2; VK_NEXT: ccode := VK_NUMPAD3; VK_INSERT: ccode := VK_NUMPAD0; VK_DELETE: ccode := VK_DECIMAL; end; {Case} if ccode <> 0 then Msg.wParam := ccode; end; {If} end; {Case Msg.Message} end; {Case} end;
procedure TForm1.FormCreate(Sender: TObject); begin Application.OnMessage := AppOnMessage; end; |
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
В этом примере курсор мыши сам встает на кнопку и нажимает на нее.
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Мышка
Пример демонстрирует установку горячей клавиши CTRL-F7:
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Нам потребуется универсальная функция, которую можно будет применять для различных визуальных контролов.
Вот пример вызова нашей функции:
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Мышка
Перевод одноимённой статьи с сайта delphi.about.com )
Начиная с самого рассвета компьютерной промышленности, клавиатура была первичным устройством ввода информации, и вероятнее всего сохранит свою позицию ещё долгое время.
События клавиатуры, наряду с событиями мыши, являются основными элементами взаимодействия пользователя с программой. В данной статье пойдёт речь о трёх событиях, которые позволяют отлавливать нажатия клавиш в приложении Delphi: OnKeyDown, OnKeyUp и OnKeyPress.
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Клавиатура
Code: |
var hintWnd: THintWindow;
procedure TForm1.ActivateHintNOW( x,y: Integer); var rect: TRect; begin HintTxt := 'qq'; if hintTxt <> '' then begin rect := hintWnd.CalcHintRect( Screen.Width, hinttxt, nil); rect.Left := rect.Left + x; rect.Right := rect.Right + x; rect.Top := rect.Top + y; rect.Bottom := rect.Bottom + y; hintWnd.ActivateHint( rect, hinttxt); end; end; |
Замечание: Не забудьте каждый раз создавать hintWnd:
hintwnd:= THintWindow.create(self);
а затем освобождать его
hintwnd.releasehandle;
- Подробности
- Родительская категория: Мышка/клавиатура
- Категория: Мышка
Страница 10 из 17