Последние записи
- Склеить несколько файлов в один
- Windows 10 сменить администратора
- Рандомное слайдшоу
- Событие для произвольной области внутри TImage
- Удаление папки с файлами
- Распечатка файла
- Преобразовать массив байт в вещественное число (single)
- TChromium (CEF3), сохранение изображений
- Как в Delphi XE обнулить таймер?
- Изменить цвет шрифта TextBox на форме
Интенсив по Python: Работа с API и фреймворками 24-26 ИЮНЯ 2022. Знаете Python, но хотите расширить свои навыки?
Slurm подготовили для вас особенный продукт! Оставить заявку по ссылке - https://slurm.club/3MeqNEk
Online-курс Java с оплатой после трудоустройства. Каждый выпускник получает предложение о работе
И зарплату на 30% выше ожидаемой, подробнее на сайте академии, ссылка - ttps://clck.ru/fCrQw
10th
Ноя
Разбор строки
Как осуществить разбор следующей строки:
[var] a [endvar] [equ] [num] 13 [endnum] [enddir] (читать всё…)
9th
Ноя
Запуск программы в определенное время
Как можно сделать так, чтобы программа запускалась в определенное время? (читать всё…)
8th
Ноя
КЛАВИАТУРА
Для начала маленький код для определения нажатия клавиши Print Screen:
private
procedure AppIdle(Sender: TObject; var Done: Boolean);
//…
procedure TForm1.AppIdle(Sender: TObject; var Done: Boolean);
begin
if GetAsyncKeyState(VK_SNAPSHOT) <> 0 then
Form1.Caption := ‘PrintScreen!’;
Done := True;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
Application.OnIdle := AppIdle;
end;
А теперь программный аналог Print Screen’а:
procedure TForm1.Button1Click(Sender: TObject);
var
bmp: TBitmap;
begin
bmp := TBitmap.Create;
try
bmp.Width := Screen.Width;
bmp.Height := Screen.Height;
BitBlt(bmp.Canvas.Handle, 0, 0, Screen.Width, Screen.Height,
GetDC(GetDesktopWindow), 0, 0, SRCCopy);
Image1.Picture.Bitmap:=bmp;
finally
bmp.Free;
end;
end;
Проверка свечения диодов на клавиатуре:
procedure TForm1.Button1Click(Sender: TObject);
begin
// x – integer. X = 145 = Scroll Lock; X = 144 = Num Lock; X = 20 = Caps Lock
if GetKeyState(X) and 1 = 0 then
Form1.Caption := ‘Не горит’
else
Form1.Caption := ‘Горит’;
end;
Эмуляция нажатия клавиш например для Memo1:
SendMessage(Memo1.Handle, WM_CHAR, Ord(‘A’), 0);
И на последок коды виртуальных клавиш:
vk_LButton = $01;
vk_RButton = $02;
vk_Cancel = $03;
vk_MButton = $04; { генерятся только системой вместе с L & RBUTTON }
vk_Back = $08;
vk_Tab = $09;
vk_Clear = $0C;
vk_Return = $0D;
vk_Shift = $10;
vk_Control = $11;
vk_Menu = $12;
vk_Pause = $13;
vk_Capital = $14;
vk_Escape = $1B;
vk_Space = $20;
vk_Prior = $21;
vk_Next = $22;
vk_End = $23;
vk_Home = $24;
vk_Left = $25;
vk_Up = $26;
vk_Right = $27;
vk_Down = $28;
vk_Select = $29;
vk_Print = $2A;
vk_Execute = $2B;
vk_SnapShot = $2C;
{ vk_Copy = $2C не используется клавиатурой }
vk_Insert = $2D;
vk_Delete = $2E;
vk_Help = $2F;
{ vk_A — vk_Z такие же, как и их ASCII-эквиваленты: ‘A’ — ‘Z’ }
{ vk_0 — vk_9 такие же, как и их ASCII-эквиваленты: ‘0’ — ‘9’ }
vk_NumPad0 = $60;
vk_NumPad1 = $61;
vk_NumPad2 = $62;
vk_NumPad3 = $63;
vk_NumPad4 = $64;
vk_NumPad5 = $65;
vk_NumPad6 = $66;
vk_NumPad7 = $67;
vk_NumPad8 = $68;
vk_NumPad9 = $69;
vk_Multiply = $6A;
vk_Add = $6B;
vk_Separator = $6C;
vk_Subtract = $6D;
vk_Decimal = $6E;
vk_Divide = $6F;
vk_F1 = $70;
vk_F2 = $71;
vk_F3 = $72;
vk_F4 = $73;
vk_F5 = $74;
vk_F6 = $75;
vk_F7 = $76;
vk_F8 = $77;
vk_F9 = $78;
vk_F10 = $79;
vk_F11 = $7A;
vk_F12 = $7B;
vk_F13 = $7C;
vk_F14 = $7D;
vk_F15 = $7E;
vk_F16 = $7F;
vk_F17 = $80;
vk_F18 = $81;
vk_F19 = $82;
vk_F20 = $83;
vk_F21 = $84;
vk_F22 = $85;
vk_F23 = $86;
vk_F24 = $87;
vk_NumLock = $90;
vk_Scroll = $91;
8th
Ассоциация файлов
Как сделать ассоциацию файлов формата mp3 с моей программой? И что-бы программа открывала эти файлы и воспроизводила (программа Плеер). (читать всё…)
8th
Прямой доступ к физическому устройству
BOBAH13
Есть код уже, я уже и о драйверах думал, вообщем вот вопрос.
Существует (ну для примера у меня на ПК это \\.\M:) USB Flash Drive, виден на ПК, вообщем все ок. Хочу открыть его как физический диск, и записать например во второй сектор (у меня он 512 байт) Hello World! ну это так для разминки. Что странно, что WinHex нормально опишет, почему не ясно. У меня система Windows XP SP3.
Код:
8th
Вернуть данные из dll
Если вызывать функции и процедуры из DLL то все понятно, через них можно передавать всякие там цифры, тексты и т.п. А как в обратную сторону? У меня в exe есть глобальная переменная, текст, как мне передать её в процедуру в dll т.е. чтобы dll подхватила это и начала там че-то делать с этим. (читать всё…)
8th
Приложение Delphi API
BOBAH13
Обычно делал контролы в VCL, а вот щас надо сделать в Win API. Ну создал окно (CreateWindowEx) по рисовал малек, получил допустим кнопку. Есть мой класс
(читать всё…)
7th
Ноя
Получение системных путей
BOBAH13
Собственно вопрос как получить например путь к открытию через шел винды (ShellApi.ShellExecute) корзину. Идентификатор-путь будет вида ::{………} Есть идея что надо работать через SHGetSpecialFolderLocation и CSIDL_BITBUCKET. Но это не дает результат, у меня. Собственно интересует возможность получать все возможные идентификаторы в системе. Может кто разъяснит. Спасибо.
Облако меток
css реестр ассемблер timer SaveToFile ShellExecute программы массив советы word MySQL SQL ListView pos random компоненты дата LoadFromFile form база данных сеть html php RichEdit indy строки Win Api tstringlist Image мысли макросы Edit ListBox office C/C++ memo графика StringGrid canvas поиск файл Pascal форма Файлы интернет Microsoft Office Excel excel winapi журнал ПРОграммист DelphiКупить рекламу на сайте за 1000 руб
пишите сюда - alarforum@yandex.ru
Да и по любым другим вопросам пишите на почту
пеллетные котлы
Пеллетный котел Emtas
Наши форумы по программированию:
- Форум Web программирование (веб)
- Delphi форумы
- Форумы C (Си)
- Форум .NET Frameworks (точка нет фреймворки)
- Форум Java (джава)
- Форум низкоуровневое программирование
- Форум VBA (вба)
- Форум OpenGL
- Форум DirectX
- Форум CAD проектирование
- Форум по операционным системам
- Форум Software (Софт)
- Форум Hardware (Компьютерное железо)