Обсуждение статьи "Графические интерфейсы X: Выделение текста в многострочном поле ввода (build 13)" - страница 10

 
Konstantin:
наверное все таки не нужно создавать два главных окна на чарте, достаточно диалоговых окон как в вашем примере ))
Да. Для корректной работы сейчас только одно главное окно должно быть. Остальные диалоговые.
 
Anatoli Kazharski:
Да. Для корректной работы сейчас только одно главное окно должно быть. Остальные диалоговые.
я про изменения в будущих билдах библиотеки, что не нужно наверное эти изменения вносить, т.к. в программе все таки должно быть одно главное окно, остальные все идут как диалоговые ))
 

В классе CTabs не хватает прокрутки вкладок, только не с полосой прокрутки как в списках и таблицах, а прощелкиванием (слева / справа и(или) сверху / снизу) элементами кнопок:

 
Konstantin:

В классе CTabs не хватает прокрутки вкладок, только не с полосой прокрутки как в списках и таблицах, а прощелкиванием (слева / справа и(или) сверху / снизу) элементами кнопок:

Возможно, для случаев, когда нужно очень много вкладок, пойдёт вариант с древовидным списком, пункты которого могут работать в режиме "Вкладки".

Примеры смотрите в этой статье: Графические интерфейсы VIII: Элемент "Древовидный список" (Глава 2)

Раздел: 

За пунктами-вкладками списков «Advisors» и «Indicators» закрепим такие элементы, как чекбоксы (CCheckBox) и таблицы типа CTable. Пункты-вкладки списка «Scripts» оставим пустыми, чтобы у вас осталась возможность быстро попрактиковаться. Весь код приводить не будем. Стоит отметить только, какие ключевые режимы и свойства будут использоваться для этого варианта: (1) включен режим пунктов-вкладок, (2) показ содержимого пунктов отключен и (3) выделим третий пункт-вкладку. 


 
Anatoli Kazharski:

Возможно, для случаев, когда нужно очень много вкладок, пойдёт вариант с древовидным списком, пункты которого могут работать в режиме "Вкладки".

Примеры смотрите в этой статье: Графические интерфейсы VIII: Элемент "Древовидный список" (Глава 2)

Раздел: 



Древовидный список удобен когда есть ветвления, а в системе вкладок ветвлений нет, это по сути список, у вас он представлен классом CTabs, но суть та же )) На моем скрине видна стандартная прокрутка для вкладок, которая применяется в различных фреймворках описывающих GUI - .NET, Qt, MFC и т.д. Думаю, что в вашей библиотеке этот механизм так же не помешает.
 
Konstantin:

Древовидный список удобен когда есть ветвления, а в системе вкладок ветвлений нет, это по сути список, у вас он представлен классом CTabs, но суть та же )) На моем скрине видна стандартная прокрутка для вкладок, которая применяется в различных фреймворках описывающих GUI - .NET, Qt, MFC и т.д. Думаю, что в вашей библиотеке этот механизм так же не помешает.

Но пока его нет, можно использовать вариант списка с пунктами-вкладками. Его ведь можно организовать без ветвлений.

P.S. А то, что много всего реализовано в других библиотеках, я и сам знаю.

Сейчас идёт тотальная оптимизация кода. Многие похожие элементы будут совмещены в одном элементе, чтобы исключить многократные повторения. То же самое относится к свойствам элементов. А после этого будет видно, в каком направлении развивать библиотеку дальше. Без фанатизма конечно. 

 
Anatoli Kazharski:

Но пока его нет, можно использовать вариант списка с пунктами-вкладками. Его ведь можно организовать без ветвлений.

P.S. А то, что много всего реализовано в других библиотеках, я и сам знаю.

Сейчас идёт тотальная оптимизация кода. Многие похожие элементы будут совмещены в одном элементе, чтобы исключить многократные повторения. То же самое относится к свойствам элементов. А после этого будет видно, в каком направлении развивать библиотеку дальше. Без фанатизма конечно. 

кстати как удалить элемент в объекте класса CTabs, а то добавление нашел, а удаление не могу найти или хотя бы метод очистки от вкладок
 
Konstantin:
кстати как удалить элемент в объекте класса CTabs, а то добавление нашел, а удаление не могу найти или хотя бы метод очистки от вкладок
Пока нет такого метода. Возможно, будет через одну статью.
 
Почему в объекте класса CTabs, после добавления методом AddTab вкладки, она не появляется, хотя метод TabsTotal показывает, что число вкладок увеличилось?
 
Konstantin:
Почему в объекте класса CTabs, после добавления методом AddTab вкладки, она не появляется, хотя метод TabsTotal показывает, что число вкладок увеличилось?

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

Добавление и удаление уже после создания элемента работает сейчас только в списках и таблицах.