HiAsm - Конструктор программ

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.



TabHub v2.0

Сообщений 1 страница 13 из 13

1

Вторая версия хаба для TabControl(a)

Обновил из среды я TabControl и что я вижу :O 
Bitmaps=Массив картинок для страниц (16-цветные рисунки)
(Раньше у меня отрисовывалось из массива png. требовалось GDI+)
А на дворе 21 век уже давно| Стиль MultiLine так и не добавили, хотя нужно то две строки прописать. Одну в ini, другую в pas.
Ну да ладно, всё что нужно я добавил в хаб...
Добавлено:
Icons=Содержит иконки вкладок
IconSize=Размер иконок
Index=Индекс иконки при добавлении вкладки методом doAddTab в TabControl, при -1 иконки не добавляются
AutoSet=Автоматически добавлять панели при запуске программы (метод doSetChildren не требуется)
MultiLine=Включить режим отображения многострочных вкладок
ParentColor=Приравнять цвет панели к цвету активной вкладки
DoubleBuff=Двойная буферизация прорисовки, исключает мерцание вкладок(глючит, скрывает кнопки навигации)

в итоге всё стало намного лучше
Скачать->

https://forumupload.ru/uploads/001b/10/a7/2/829323.png
https://forumupload.ru/uploads/001b/10/a7/2/433707.png

0

2

andrestudio Задумка интересная. Спасибо автору. Изменение цвета таба не хватает и проблемы с размерами создаваемых панелей - не вписываются. В демопримере это видно
P.S как добавить код в спойллер и прикрепить файл?

Там свойство Margin есть, оно за бордюр отвечает. Подгонку цвета под XP стиль я тоже делал Не знаю что поломалось, пример нужен Возможно у добавляемых панелей где то маржа выставлена.

Схему вставить

code] между тегами, тут просто крайних скобок нет [/ code

Отредактировано Andrew (2024-02-22 10:51:07)

0

3

Далеко ходить не нужно. Все на твоих скринах видно: на первом фото границы формы отрисованы четко по контуру (создаваемые по точке doSetChildren). На последнем скрине, создаваемой панели вручную Test Page - 2 (doAddTab): границы справа и снизу уходят далеко вниз и вправо (создаваемые панели увеличенного размера не вписываются в размер компонента, визуально обрезаются).

Отредактировано Andrew (2024-02-26 13:13:30)

0

4

Andrew
Да поправить надо динамику. Про цвет таба я понимаю так. Если темы включены то Применяются цвета темы, если темы отключены то (добавить свойство TabColor и применять его?)

0

5

Косяк с отображением стилей и Align в динамически добавляемых панелях по doAddTab поправил. Ссылка пере залита в первом посте.
С цветом надо думать. Смысла повторять TabControlEx как у nesco не вижу. Нужно отрисовывать всё и не клиентскую область тоже (чего у него не сделано, посему и выглядит это всё убого и топорно)

https://forumupload.ru/uploads/001b/10/a7/2/427024.png
https://forumupload.ru/uploads/001b/10/a7/2/845933.png

0

6

andrestudio написал(а):

Andrew
Да поправить надо динамику. Про цвет таба я понимаю так. Если темы включены то Применяются цвета темы, если темы отключены то (добавить свойство TabColor и применять его?)

Да)

0

7

Нет, всё же решил без фанатизма с этими покраска ми. Система тоже не плохо красит. Так что остановлюсь как есть.
Пошаманил, вроде пашет.
Скачать ->

https://forumupload.ru/uploads/001b/10/a7/2/209293.png

0

8

свойство Autoset работает в любом положении (панели создаются из списка TabControl), или я чего не понимаю?

Отредактировано viktor (2024-03-20 16:50:15)

0

9

Свойство Autoset действительно не отключается, хотя ранее оно работало.
Цвет панелей не меняется, он всегда белый даже если изменить цвет в панели. Костыль приходится делать :(. Подозреваю ParentColor не работает.

Отредактировано Andrew (2024-03-21 14:43:28)

0

10

С шапки компонент не работает.

0

11

Andrew написал(а):

Свойство Autoset действительно не отключается, хотя ранее оно работало.
Цвет панелей не меняется, он всегда белый даже если изменить цвет в панели. Костыль приходится делать . Подозреваю ParentColor не работает.

он не белый а соответствующий стилю src.Color := clBtnHighlight; и работает только при включенных темах винды (проверяется просто, установлением  в винде стандартного стиля), чего не в Kol и не в HiAsm так и не было сделано. В среде Delphi7 так всё и работает.

envoy_sky написал(а):

С шапки компонент не работает.

Ну прямо так много информации  :rolleyes:
Не, без примеров и логов такие обращения не рассматриваю...

для AutoSet косяк конечно

заменить процедуру Init такой чтобы работало как надо

0

12

andrestudio написал(а):

Ну прямо так много информации

Код:
Подготовка к сборке проекта...
Генерация кода целевого языка
Компоновка проекта...
Command line: dcc32.exe "C:\Users\SKY\AppData\Roaming\HiAsm_AltBuild\Elements\delphi\code\Test.dpr" "-UD:\SKY\Downloads\." -Q
Borland Delphi  Version 12.0  Copyright (c) 1983,98 Inprise Corporation

C:\Users\SKY\AppData\Roaming\HiAsm_AltBuild\Elements\delphi\code\hiTabHub.pas(6) Fatal: File not found: 'Commctrl.dcu'
Сборка завершена.

Две HiAsm версии и на обоих так.

Отредактировано envoy_sky (2024-04-01 19:38:43)

0

13

envoy_sky
Ну вот, кое что уже.
Признаю, мой косяк. Забыл выкинуть лишнее.

Kol,Windows,Share,Debug,Messages,Commctrl;

Нужно убрать

вот таким должно быть объявление подключаемых модулей

uses
  Kol,Windows,Share,Debug,Messages;

0



Рейтинг форумов | Создать форум бесплатно