Показать сообщение отдельно
Старый 12.03.2024, 14:44   #1  
Logger is offline
Logger
Участник
Лучший по профессии 2015
Лучший по профессии 2014
 
3,877 / 3127 (112) ++++++++++
Регистрация: 12.10.2004
Адрес: Москва
Записей в блоге: 2
? Как строить интерфейс на закладке "Разное".
Привет всем.
Вопрос
Как строить интерфейс на закладке "Разное".

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

При этом левый край контролов внутри группы выравнивается автоматически движком MorthX.
Так что все контролы один под одним.

Правый край может отличаться из-за разной длины контрола.
Если хочется, чтобы тоже одинаково было, то ставим ширину контрола не Auto а Column width и все контролы становятся одинаковой ширины. Мне, например, так кажется красивее.
Метки обычно выровнены по левому краю.

Но.
Если мы хотим внутри столбца втиснуть подгруппу с парой контролов, то все ломается.

Например :

Группа1
------Подгруппа1
------------Количество
------Подгруппа2
------------Скидка%------------СкидкаСумма
------Подгруппа3
------------СтавкаНДС%------СуммаНДС

(движок форума почему-то "съедает" пробелы и отступы пропадают, поэтому поставил дефисы вместо пробелов или табуляций)

то все пропало
контролы "Количество", "Скидка%", "СтавкаНДС%" движок MorthX выравнивает, а "СкидкаСумма" и "СуммаНДС" не хочет.

Особенно криво все смотрится если длины EDT сильно отличается и длина меток тоже сильно отличается (видимо мозг настолько привык к Excel и к гриду, что даже на вкладке "Разное" интуитивно ищет порядок в расположении контролов и если не видит знакомой сетки, то считает, что гадость).

Пробуем разную комбинацию значений свойств AlignControl, AlignChildren, AlignChild, Width (Auto / Column width)

Ничего не получается.
Прихожу к выводу что движок MorthX не заточен под такое и каноничным расположение контролов в группах было было так :


------Подгруппа1
------------Количество
------Подгруппа2
------------Скидка%
------------СкидкаСумма
------Подгруппа3
------------СтавкаНДС%
------------СуммаНДС


(т.е. во всех группах Columns = 1 или Auto)

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

Но может я что-то не знаю ?

Ax 2009 - 2012

Последний раз редактировалось Logger; 12.03.2024 в 15:09. Причина: съехало форматирование