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

VirtUX
22.01.2024 16:32:42
Форум: Сторонние средства
Тема: Взаимодействие с GPIO (Orange PI + wiringOP)
Ответы: 2
Просмотры: 6806

Re: Взаимодействие с GPIO (Orange PI + wiringOP)

https://wiki.freepascal.org/ARM_Embedde ... _output/ru
Сделал перевод на русский. Попробую управлять одним пином на основе этой статьи.
VirtUX
21.01.2024 15:44:20
Форум: Сторонние средства
Тема: Взаимодействие с GPIO (Orange PI + wiringOP)
Ответы: 2
Просмотры: 6806

Взаимодействие с GPIO (Orange PI + wiringOP)

Имеется:
- железо http://www.orangepi.org/html/hardWare/computerAndMicrocontrollers/details/Orange-Pi-Zero-2.html ;
- Debian OS;
- установлена библиотека взаимодействия с GPIO https://github.com/orangepi-xunlong/wiringOP

Собственно вопрос - есть-ли библиотека для FPC, чтобы взаимодействовать с ...
VirtUX
29.06.2021 18:05:13
Форум: Общее
Тема: Альтернатива для BorderStyle=bsNone + WindowState=wsMaximize
Ответы: 7
Просмотры: 18522

Re: Альтернатива для BorderStyle=bsNone + WindowState=wsMaxi

Нужно кроссплатформенное решение без привязки к GTK, Qt, WIN32 или еще к чему.
VirtUX
29.06.2021 16:41:35
Форум: Общее
Тема: Альтернатива для BorderStyle=bsNone + WindowState=wsMaximize
Ответы: 7
Просмотры: 18522

Re: Альтернатива для BorderStyle=bsNone + WindowState=wsMaxi

Заметил, что этот баг наблюдается если подключено более одного монитора. При одном мониторе - поведение, как и ожидается.
Если максимизировать на главном мониторе, то окно смещается на ширину панели за границу монитора. Если максимизировать на дополнительном мониторе, окно прячется под саму панель ...
VirtUX
29.06.2021 10:52:04
Форум: Общее
Тема: Альтернатива для BorderStyle=bsNone + WindowState=wsMaximize
Ответы: 7
Просмотры: 18522

Re: Альтернатива для BorderStyle=bsNone + WindowState=wsMaxi

Vadim писал(а):полностью закрывать рабочий стол

не проблема:

Код: Выделить всё

WindowState:= wsFullScreen

Мне нужно повторить работу кнопки "развернуть на весь экран". То есть панели не должны перекрываться окном или перекрывать окно.
VirtUX
28.06.2021 20:05:30
Форум: Общее
Тема: Альтернатива для BorderStyle=bsNone + WindowState=wsMaximize
Ответы: 7
Просмотры: 18522

Альтернатива для BorderStyle=bsNone + WindowState=wsMaximize

Если у TForm установлено BorderStyle := bsNone, то попытка сделать WindowState := wsMaximized проигнорируется классом.
В 2009 году вроде как это исправили для версии Lazarus 0.9.29.
Но у меня почему-то не работает.
OS: KDE Neon
Среда разработки собрана под QT5

Может этот баг проявляется только под ...
VirtUX
18.06.2021 17:00:21
Форум: Общее
Тема: Как правильно передать строку в работающий поток?
Ответы: 14
Просмотры: 33479

Re: Как правильно передать строку в работающий поток?

Дож писал(а):Основная проблема второго фрагмента кода заключается в том, что оператор копирования строки не атомарный.


Понял. Спасибо!
VirtUX
18.06.2021 16:00:54
Форум: Общее
Тема: Как правильно передать строку в работающий поток?
Ответы: 14
Просмотры: 33479

Как правильно передать строку в работающий поток?

Есть поток с "бесконечным" циклом. На каждой итерации цикла, помимо основных действий, еще нужно проверять строку на наличие данных (то есть: fDataString.Length > 0) и обрабатывать эти данные, - которые должны попадать из главного потока.
Вопрос: обязательно использовать критические секции? Если ...
VirtUX
24.05.2021 14:46:34
Форум: Общее
Тема: Как повесить обработчик на NTP?
Ответы: 5
Просмотры: 14519

Re: Как повесить обработчик на NTP?

olegy123 писал(а):Windows событие WM_TIMECHANGE

Не кроссплатформенно. А CM_TIMECHANGE еще не реализовано, - ждём...
olegy123 писал(а):Вы хакингом занимались?

Нет. Бюджетными тайминговыми системами для соревнований.
olegy123 писал(а):2) иметь аппаратные ключи, типа HASP

Спасибо! Это вариант.
VirtUX
24.05.2021 13:42:08
Форум: Общее
Тема: Как повесить обработчик на NTP?
Ответы: 5
Просмотры: 14519

Re: Как повесить обработчик на NTP?

Мне нужно отследить момент, когда ОС сама выполнит синхронизацию времени, или пользователь вручную это сделает, или какое стороннее приложение это сделает. Мне как раз ненужно, чтобы время НЕ менялось. И поэтому нужно успеть среагировать на изменение системного времени.

Параллельный вопрос:
Как ...
VirtUX
23.05.2021 18:51:16
Форум: Общее
Тема: Как повесить обработчик на NTP?
Ответы: 5
Просмотры: 14519

Как повесить обработчик на NTP?

Задача: вовремя среагировать на изменение системного времени, во время синхронизации его с NTP сервером.
Кроссплатформенно.
VirtUX
02.07.2020 15:07:31
Форум: Free Pascal Compiler
Тема: Где на русском почитать про нетипичные операторы?
Ответы: 7
Просмотры: 8640

Где на русском почитать про нетипичные операторы?

Добрый день!
Есть в fpc ряд нетипичных операторов, например:
i+= 1;
s:= i.ToString;
Где можно посмотреть весь список нетипичных возможностей?
И есть-ли что-то похожее на:
i = (x < 0) ? y : z; (Java, PHP)
Сейчас делаю в некоторых ситуациях так:
i:= BoolToStr(x < 0, y.ToString, z.ToString ...
VirtUX
04.03.2020 13:35:49
Форум: Free Pascal Compiler
Тема: как определить консоль или гуи?
Ответы: 13
Просмотры: 12489

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

Снег Север
Не хочу Вас расстраивать, но считаю необходимым Вас предупредить...
Уж не помню с какой версии, но Windows server можно устанавливать без GUI. И всё серверное ПО не имеет GUI даже под Windows. Любой современный Windows server имеет возможность управления через web-морду.
В принципе, за ...
VirtUX
02.03.2020 12:16:53
Форум: Free Pascal Compiler
Тема: как определить консоль или гуи?
Ответы: 13
Просмотры: 12489

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

Может вот так попробовать

{$if defined(console) and not defined(lcl)}
//considered console
{$else}
//considered gui
{$endif}

Спасибо! То, что нужно!

клепать программу без оконного интерфейса (что тоже моветон в 21-м веке).
Всё серверное ПО "клепается" без GUI. Так как на сервере не бывает ...
VirtUX
29.02.2020 14:30:45
Форум: Free Pascal Compiler
Тема: как определить консоль или гуи?
Ответы: 13
Просмотры: 12489

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

С помощью какой директивы можно определить для какого приложения компилируется код: консольного или графического?