Современный UI. Часть 2.

https://1.bp.blogspot.com/-8dtV1gR38GY/YUCPzXo_dMI/AAAAAAAAIZU/Jx4t1dn8zUMvriGTD9XVWzCdqAsQIkzhwCLcBGAsYHQ/w945-h600-p-k-no-nu/cvetovaya-palitra-1499.png


Небольшое художественное отступление, которое посвящается дизайну как науке.


Если вам кажется, что удачное сочетание цветов на экране - результат везения, то это вам кажется. На самом деле это результат математического расчёта. Не вдаваясь в теорию, могу порекомендовать готовые инструменты для создания своей цветовой палитры...


Читать далее: https://createmyvisualdatabaseapp.blogs … /ui-2.html

902

(6 replies, posted in Russian)

Пользуясь случаем хочу поблагодарить vovka3003 за решение задачки с прокруткой  http://myvisualdatabase.com/forum/viewtopic.php?id=7378


Для меня было неожиданностью, что координаты x,y  в обработчике TForm.OnMouseWheel - это экранные координаты, а не относительные координаты внутри формы, но способ рабочий, благодарю!


Вторая неожиданность - событие срабатывает для формы с фокусом, даже если курсор находится не на форме. По мне так это не совсем логично, но лечится проверкой координат мыши...

903

(6 replies, posted in Russian)

Это свойство, которому назначается обработчик событий.
Их пока нет.... 


Кстати, вы уже решили данную задачу - прокрутку содержимого окна мышкой? Или будете ждать Дмитрия?

Современный UI. Часть 1.


https://1.bp.blogspot.com/-zLmK8tZoXhU/YT4ik46dIII/AAAAAAAAIVw/qd_UUc1W1j4oJ8Cd8VgtZoSM-ZZnACMQgCLcBGAsYHQ/s1030/%25D0%25B8%25D0%25B7%25D0%25BE%25D0%25B1%25D1%2580%25D0%25B0%25D0%25B6%25D0%25B5%25D0%25BD%25D0%25B8%25D0%25B5_2021-09-12_185354.png


С ростом производительности компьютеров растут и ожидания пользователей относительно удобства и красоты интерфейса программ, в том числе - для бизнес-приложений. В частности надо обязательно учитывать особенности отличия восприятия информации между мужчинами и женщинами. Например, для представителей прекрасного пола очень важна цветовая гамма и простота интерфейса, а наличие художественной составляющей увеличивает скорость запоминания основных функций программы. Впрочем, мужчины тоже предпочитают интуитивно-понятный интерфейс, который не предполагает чтение инструкции для начала работы с программой.


Возможно ли создание подобного интерфейса силами среды разработки My Visual Database, которая по умолчанию предлагает стандартные компоненты отображения данных? Мой ответ - да. Но для этого придется использовать скрипты, а также некоторые дополнительные инструменты.


Читать далее:  https://createmyvisualdatabaseapp.blogs … /ui-1.html

В дереве компонентов отображать иерархию по свойству Parent, чтобы было видно вложенность компонентов.

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&item=8062&download=0

P.S. В настоящий момент они отображаются в иерархии по свойству Owner, что и так очевидно: у всех компонентов формы владельцем является форма.

Возможно, причиной является виртуальная память Windows. Не используемые в данный момент блоки памяти выгружаются в файл подкачки. А потом загружаются обратно при обращении к ним. Если диск не SSD, то могут быть тормоза.


На моей рабочей станции 16 Гб оперативной памяти, своп отключен, описываемых тормозов нет.

Теперь в библиотеке доступны оба имеющихся авторских курса ( Базовый уровень и Продвинутый уровень. Часть 1 )

https://mvdlibrary.blogspot.com/p/blog-page_2.html

Логирование SQL-запросов модификации БД из конструктора.


Это позволит включать в обновления прикладной программы SQL-запросы для приведения структуры базы в соответствие с новой версией приложения. Сейчас такие запросы приходится писать вручную (из-за чего часто бывают ошибки), либо включать/выключать лог всех запросов на самом сервере, что тоже не совсем удобно.

В скриптах добавить доступ к свойству  ShowHint для класса TWinControl

vovka3003 wrote:

Вообще тема не совсем удачно наречена...
Это не "подводные камни автоматизации в MVDb", а "особенности строения последовательности процедур в [любом] однопоточном приложении".

Многопоточность, как мне показалось, в MVD местами имеется. Например, при отрисовке таблиц и деревьев.


Пример с асинхронным выполнением запроса к БД и отображения формы будет давать эффект, если форма не просто открывается, а создается. В MVD все формы создаются до подключения к БД и открываются шустро. С другой стороны, если форма открылась, а запрос тяжёлый и тупит, то разглядывание формы без данных - скучное занятие )))


На самом деле идея с таймером классная: так как в MVD нет события OnAfterShow, то вместо него можно использовать таймер: после отображения формы с таблицей запускается таймер (10 мс,) в котором вызывается клик по кнопке обновления данных на форме. И пользователю будет понятно, над чем именно "думает" в данный момент программа. Разумеется, проблема однопоточности выполнения самих скриптов останется...


А в моём примере проблема не в кривом запросе (его ведь сделал пользователь - вот пусть и думает над своим поведением), а в том, что при открытии формы туда тянется то, что там не нужно. Но я согласен со sparrow - это небольшая плата за автоматизацию. И она сможет стать ещё меньше, если у формы добавить свойство dbSQL, в котором будет храниться запрос на открытие формы редактирования и который можно будет ручками тюнить.

vovka3003 wrote:

...А вообще надо пытаться понять, что пишешь... Совершенствоваться как-то, курить гугл, зубрить маны...

*записывает в блокнотик* курить Гугл...

Из-за того, что некоторые процессы в My Visual Database полностью автоматизированы, иногда можно получить весьма неожиданный и нежелательный результат.


1. Форма редактирования и вычисляемые поля


Алгоритм открытия формы редактирования содержит в себе код, который формирует запрос вида

SELECT
<поле 1>
<поле 1>
<поле 1>
...
<поле n>
FROM
<таблица>
WHERE
id = <id редактируемой записи>

То есть в запрос включаются ВСЕ поля, которые есть в описании таблицы.


И этот вполне безобидный запрос может привести к увеличению времени открытия формы редактирования, если среди вычисляемых полей имеется поле с подзапросами, даже если на форме редактирования вы явно не отображаете данное поле!


Понятно, что подзапросы - это зло, но автоматическое затягивание всех полей таблицы в запрос без учета того, какие поля на самом деле находятся на форме редактирования, это не совсем корректно.


Было бы совсем хорошо видеть этот самый запрос и менять его в случае необходимости, как это сделано для запроса, который формирует данные в табличном представлении.

vovka3003 wrote:
k245 wrote:

Владимир, ты ведь в курсе, что это за программа? )))

Да, она неплохая, но ее можно использовать только для "личных" целей (ну вы меня понимаете)...

Не совсем. В лицензионном соглашении написано, что использовать можно как угодно. Но я вижу, что она сыровата, не на всё есть документация и подсказки. На форуме тоже не ахти какая активность. Если ты знаешь нюансы, расскажи )))

Кто там хотел мини-дельфи?  DyBase очень похож на ранние версии ))))


А как мирно топик называется - программа печати PDF-файлов....

CDB wrote:

Dybase  - lucasproject  www.dybase.ru.

Во жара пошла... Ещё одна среда визуального программирования... А на сайте знакомая иконка... Владимир, ты ведь в курсе, что это за программа? )))

sibprogsistem wrote:

Вы меняли настройки? я опять загрузил и вижу тоже самое

Нет (((, в следующей сборке. Там определенные доработки делаются, но пока руки не доходят на новую версию.

917

(5 replies, posted in Talks about all)

Это для проверки, читает ли кто-нибудь это всё или нет)))
На этой неделе закомментирую его как следует и выложу в библиотеке https://mvdlibrary.blogspot.com

Там пока только отображение игрового поля, проверка хода и подсчет очков. Планирую добавить ИИ, настраиваемые параметры (размер карты, размеры блоков, число игроков), а также игру по сети.  Ну, и графику поинтересней ))

918

(6 replies, posted in General)

Like this:
http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=8034&amp;download=0

919

(6 replies, posted in General)

To do this, you need to set up some properties of the grid.

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=8033&amp;download=0

sibprogsistem wrote:

до 5-ти тысяч долларов в год, ну ясен дуб, что если заработал 5т зеленых то можешь и лицензию купить )
https://www.embarcadero.com/ru/products/delphi/starter


Хм... как я этого раньше не видел - нормальное такое предложение: сделал проект, отбил бабло, затарился лицухой и крути педали дальше...


Еле поставил на Win7 - требовалось обновление протокола безопасности для ftp, но Эмбаркадеро об этом - ни гугу,  установщик просто внутреннюю ошибку выдавал...

921

(6 replies, posted in General)

1. There are no settings for the color of the hyperlink in the editor, however, if you load a document from the HTML format into the editor, you can specify the required color of the hyperlink.


2. Yes, they do, since these are two different instances of the component for displaying data. If you need to synchronize them, then use the script on the OnCellClick event.

922

(25 replies, posted in General)

somewhat wrote:

Maybe to make it more understandable to some people why a part of us becomming scared about the situation with Dmitry...

Totally agree with you. But I want to note that this is the case with any business - it is fraught with risks, even if you rely on such unsinkable aircraft carriers as Microsoft or Apple.


In essence, I can only say that Dmitry regularly uses Skype, so I consider fears associated with panic around the now popular virus to be irrelevant. But the peculiarity of Dmitry's character does not imply frequent and regular communication, so I can not say anything more.

В продолжение подкаста популярности и стоимости средств разработки от Яндекс -  "О чем думают программисты" ))):


http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=8024&amp;download=0

sibprogsistem wrote:

http://myvisualdatabase.com/forum/misc.php?action=pun_attachment&amp;item=8023&amp;download=0

Какой богатый стек разработки.... Пользуетесь всем? Было бы интересно ваше мнение. В плане сравнения возможностей и удобства работы в семейке Pascal  )))

sibprogsistem wrote:

Delphi RAD studio 10.3 Community Edition  - не нужно ни кого ломать, свободная версия..

Она бесплатная до тех пор, пока вы лично для себя упражняетесь. Но создавать распространяемые программные продукты правообладатель не разрешает. К тому же, как я понимаю, она сильно урезана и подходит для ознакомления и обучения.