Найдено 10 результатов

Stargazer44
19.03.2019 15:10:53
Форум: Обучение Free Pascal
Тема: Файл или папка?
Ответы: 7
Просмотры: 37605

Файл или папка?

ОС: Windows.
Есть строка (string), значение которой представляет собой путь к объекту на диске.
Как определить что представляет собой объект: папка или файл или объект вообще не существует?
Stargazer44
19.02.2017 11:55:45
Форум: Обучение Free Pascal
Тема: Определить тип переданной в процедуру переменной
Ответы: 6
Просмотры: 18084

Определить тип переданной в процедуру переменной

Всё началось с того, что я обратил внимание на то, что стандартная процедура Val в случае ошибки перевода "портит" предыдущее значение результата.
Ладно, думаю, напишу свою процедуру, которая не занимается бессовестной порчей данных . Но тут возник вопрос: в оригинальной процедуре тип результата ...
Stargazer44
28.03.2015 09:38:45
Форум: Обучение Free Pascal
Тема: Клавиатура и мышь
Ответы: 7
Просмотры: 16901

Re: Клавиатура и мышь

Ура! У меня получилось!!!
Огромное спасибо В. А. Соковикову за перевод документации: http://www.vsokovikov.narod.ru/New_MSDN_API/Console/ogl_con.htm
Благодаря ей, я написал процедуру, которая прекрасно заменяет собой crt'шные readkey и keypressed, ещё и мышь опрашивает:

uses ...
Stargazer44
22.07.2014 07:43:31
Форум: Обучение Free Pascal
Тема: Клавиатура и мышь
Ответы: 7
Просмотры: 16901

Re: Клавиатура и мышь

SSerge писал(а):Если вывод производите средствами консоли, то перед вводом необходимо поставить паузу.

Уфф. Пробовал - не получилось.
SSerge писал(а):Или использовать для вывода не-консольные средства.

А вот тут, пожалуйста, поподробнее...
Stargazer44
10.01.2014 22:04:29
Форум: Обучение Free Pascal
Тема: Как получить дескриптор консольного окна
Ответы: 8
Просмотры: 19460

Re: Как получить дескриптор консольного окна

Уважаемый Vadim, слепил я из Вашего кода вот такую функцию:
function GetConsoleHwnd:HWND;
var h: HWND;
function EnumWndProc(h:HWND; l:LPARAM): BOOL; stdcall;
begin
if GetWindowThreadProcessId(h, NIL) = GetCurrentThreadId() then
EnumWndProc:=FALSE;
else
EnumWndProc&#58 ...
Stargazer44
02.01.2014 10:33:03
Форум: Обучение Free Pascal
Тема: Как получить дескриптор консольного окна
Ответы: 8
Просмотры: 19460

Re: Как получить дескриптор консольного окна

Vadim писал(а):Текущего, в котором работает сама программа?

Да.
Stargazer44
31.12.2013 16:49:58
Форум: Обучение Free Pascal
Тема: Как получить дескриптор консольного окна
Ответы: 8
Просмотры: 19460

Как получить дескриптор консольного окна

Как получить дескриптор (HWND) консольного окна средствами Free Pascal ?
Нашёл несколько примеров на C++ :
http://www.cyberguru.ru/cpp-sources/ui-windows/kak-poluchit-deskriptor-konsolnogo-okna-hwnd.html
http://www.rsdn.ru/article/qna/ui/conhandl.xml
Помогите ...
Stargazer44
30.12.2013 13:26:53
Форум: Обучение Free Pascal
Тема: Клавиатура и мышь
Ответы: 7
Просмотры: 16901

Re: Клавиатура и мышь

FPC 2.7.1 x32 и x64
Windows 7 x64 оба варианта работают. С оговоркой. Но тут уж как написали, так оно и действует.
То есть, если кратковременно ткнуть в кнопку - то как повезёт. Если кнопку держать долго - срабатывает.
Хотите, чтобы срабатывало с первого раза, уберите это безобразие:

write(chr ...
Stargazer44
25.12.2013 23:35:32
Форум: Обучение Free Pascal
Тема: Клавиатура и мышь
Ответы: 7
Просмотры: 16901

Клавиатура и мышь

Не пойму, что здесь не так.
Не работают совместно клавиатура и мышь:
нажатие кнопок мыши цикл прерывает, а на клавиатуру программа не реагирует (кроме Ctrl-Break)
FPC 2.6.0 , Windows-7 x64


program KeybMous;

uses crt,mouse;

var
me : TMouseEvent;
ch : char;

begin
InitMouse;

repeat ...