@poopoo

Тег Delphi в блоге poopoo

poopoo

How to make software product (x8 speed)
Screencast of making software product for Windows using Delphi programing language, GoDaddy domain and hosting, Wordpress CMS for website, NSIS as installer, and Twitter, Facebook and Google Plus social networks.

https://yewtu.be/watch?v=ivE7VmGR7no

poopoo

З цим Delphi я відкриваю всілякі глибини WWW. Наприклад архів delphimasters.net який зберігся лише в Web archive (https://web.archive.org/web...w.delphimaster.net). А ще http://decoding.dax.ru який виглядає a la 90-ті. Також дивно що чимало сайтів з пошукової видачі з зони RU і відкриваються лише через Tor що починає дратувати.

poopoo

Для показу багаторядкової підказку (властивість Hint) мусиш в коді задати значення відповідній властивості. Символи нового рядка — #13#10. Через дизайнер підказка лише в один рядок. Що за хуйня?

poopoo

Моя програма на Delphi чомусь почала видавати access violation в Windows 7. Але в Windows XP працює як і працювала.

poopoo

VCL і масштабування. Дуже просто.

Set the Scaled property of forms to True. (This is the default.)
Use only TrueType fonts.
Use Windows small fonts (96 dpi) on the computer you use to develop the forms.
Set the AutoScroll property to False, if you want to scale the form and not just the controls inside it. (AutoScroll defaults to True, so don't forget to do this step.)
Set the form position either near the upper-left corner or in the center of the screen (with the poScreenCenter value) to avoid having an out-of-screen form. Form position is discussed in the next section.

https://www.delphipower.xyz...ic_form_scaling.html

poopoo

Прописав щоб замість згортання на панель задач вікно згорталося в системний лоток, але у Windows 7, коли використовуєш комбінацію клавіш Win + стрілка вниз, воно згортається в заголовок і цей заголовок тулиться до панелі задач в районі системного лотка. А якщо властивість AutoSize форми = True, то з кожним розгортанням вікно ставатиме все більшим. Охуєнні несподіванки ледь не на кожному кроці.

poopoo

При зміні розмірів вікна блимає картинка в цьому вікні. Також в ValueListEditor зʼявляється і зникає вимкнена мною смужка прокрутки. І вона теж блимає.

poopoo

Можна було б подумати що шрифти в програмах на VCL будуть змінюватися разом з системними, але насправді це не так. Як в IDE прописано Tahoma так воно і буде Tahoma. Можна було б подумати що в IDE є галочка щоб шрифт узгоджувався з системним. Галочки немає. Найлегший спосіб це змінити властивість ParentFont форми на True і ще до її створення задати шрифт через Application.DefaultFont.Handle. Не впевнений що цього достатньо адже в налаштуваннях Windows для різних компнентів (загловок вікна, панель меню і т.п.) GUI можна задати різні шрифти.

Подивився скільки років Visual Component Library. Випущена 1995. За 28 рочків не можна було зробити по людські? Починаю підозрювати що там сидять якісь говноко

Доречі:
Note: When possible, change a font by setting the other properties of TFont rather than using the Handle property. Setting Handle does not reset the properties that describe the font. However, an OnChange event does occur when Handle is set directly by an application.

Font consistency throughout Project? - Stack Overflow — https://stackoverflow.com/q...y-throughout-project

Получение информации о системных шрифтах — https://delphisources.ru/pa.../sys_fonts_info.html

poopoo

Delphi one love.

poopoo

Delphi продовжує радувати.

poopoo

Google і webcrawler.com підсовують якусь фігню яка мало стосується пошукового запиnу а от Яндекс на першій же сторінці видав якраз те що я шукав.

poopoo

Якщо „Delphi XE 3“ під Windows XP просто не запускається видаючи помилку Invalid data type for 'Indy SASL', то в Windows 7 воно про всі експортовані модулі пише Can not resolve unit name і програму не дає запустити. Єдине місце де воно ще досі працює це Windows Vista в віратульній машині.

poopoo

На написання декількох рядків коду які перевіряють версію Windows та дізнаються шлях до %APPDATA% (те куди воно вказує відрізняється в залежності від версії Windows) витратив майже годину.

poopoo

На http://www.delphibasics.co.uk/ продають матеріали розміщені там у вигляді програми. Ціна 5 £. http://www.delphibasics.co....dalone/Purchase.html

poopoo

Delphi XE3 перестало працювати під Windows XP. Таке враження що воно весь час з моменту встановлення лежало на HDD і псувалося. Пише Invalid data type for 'Indy SASL'. Не перевіряв що там в Windows 7. Може воно вже й там стухло.

poopoo

Схиляюся до думки що IDE Delphi таки sucks. Створив проект, кинув декілька компонентів на форму, спробував запустити і у відповідь отримав Exception EClassNotFound in module Project2.exe at 000A72AE. Class TStringField not found.

poopoo

Більше години зʼясовував як прибрати горизонтальну смужку прокрути в DBGrid. Якби я був на роботі, то на цьому б робочий день можна було б і закінчувати. Вона стає завжди видимою коли властивість dgIndicator = False. dgIndicator відповідає за показ спеціального стовпчика на якому показується стрілочка для поточного рядка а також позначається режим (додавання або редагування). Найпростіше і найочевидніше що знайшов це

ShowScrollBar(DBGrid1.Handle, SB_HORZ, False);

але воно нічого не дало. Є ще способи з перевизначенням процедури TDBGrid.UpdateScrollBar і перехопленням через Windows API якихось там віконних повідомлень. Пощастило натрапити на отакий код: TDrawGrid(DBGrid1).ScrollBars:=ssVertical; Нарешті горизонтальної смужки немає, але тепер кнопочка на вертикальній смужці стискається до мінімального розміру коли в цьому немає необіхдності що неприємно, але не критично. Так і відчуваю який там пиздець твориться всередині цього DBGrid.

poopoo

В TGridPanel з трьома рядками і одним стовпчиком додав три кнопки. Що мало б статися? Кнопки поввинні б були рівномірно заповнити TGridPanel. Що сталося натомість: середня кнопка стислася до мікроскопічних розмірів а решта поділили між собою простір що залишився.

poopoo

Кнопка з випадаючим меню доступна лише починаючи з Vista. Довелося взяти ToolBar і вже в нього додати ToolButton яка таки може мати таке меню. Виявилося що при зміні оформлення на класичне висота ToolButton зменшується до 19, вона зміщається всередині ToolBar і її висота не співпадає з висотою панелі інструментів що по–перше, виглядає погано і по–друге, важче попадати мишкою. Повернути пристойний вигляд можна задіявши властивість AlignWithMargins панелі інструментів, але якщо змінити оформлення на відмінне від класичного, то ToolButton стає значно вищою і частково залазить за межі ToolBar. І на додачу: якщо задіяти властивість EnableDropdown ToolButton, то кнопка набуває вигляду неактивної хоча й працюючої, але навіть попри EnableDropdown = False випадаюче меню всеодно зʼявляється. Знайшов JVCL (JVCL is a library of over 600 Delphi components developed by "Project JEDI" members), але як ним користуватися я не знаю. Воно не встановлюється з повідомленням „rtl170.bpl was not found“.

За всі роки існування Delphi та Windows можна було наробити стільки елементів GUI, що вистачило б на покоління і покоління вперед. Замість цього вони постійно клепають нові версії з хер пойми якими нововведеннями. Visual studio та Windows forms і WPF майже такі самі.

І це IDE. Жах якийсь. Пошуку по властивостям і подіям елементу немає тож доводиться проглядати довгий перелік всього цього добра (звісно ж дрібним шрифтом). Просто якісь кінчені виродки.

poopoo

Не зовсім явна і дуже важлива відмінність між подіями OnKeyUp і OnKeyDown полягає в тому що OnKeyDown стається поки користувач тримає клавішу натиснутою. Тобто код обробки OnKeyDown буде виконуватися доти доки клавішу не відпустять.

Добавить пост

Вы можете выбрать до 10 файлов общим размером не более 10 МБ.
Для форматирования текста используется Markdown.