Выровнять число по центру.

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
Ответить
kreator
Ветеран
Сообщения: 2711
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Выровнять число по центру.

Сообщение kreator » 16 Май 2018, 15:49

С10. На экране есть Entry-поле с форматом '@n_5b'. Поставил выравнивание по центру. Если число не с пятью цифрами, то сильно заметен сдвиг. Помогает задание формата динамически. Но это как-то странно. Не способен Кларион сам убирать пробелы впереди числа?
С уважением, Kreator.

PavelNK
Активист
Сообщения: 180
Зарегистрирован: 15 Март 2011, 8:02

Выровнять число по центру.

Сообщение PavelNK » 16 Май 2018, 17:10

Сделай шрифт моноширинный Courier и сразу все станет ясно

kreator
Ветеран
Сообщения: 2711
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Выровнять число по центру.

Сообщение kreator » 17 Май 2018, 10:04

Моноширинный шрифт только усугубляет проблему (левые пробелы больше). Чтобы было понятно, привожу картинку:
1.png
1.png (3.24 КБ) 168 просмотров
С уважением, Kreator.

gopstop2007
Ветеран
Сообщения: 996
Зарегистрирован: 25 Март 2009, 21:55

Выровнять число по центру.

Сообщение gopstop2007 » 17 Май 2018, 14:44

kreator писал(а):
17 Май 2018, 10:04
Моноширинный шрифт только усугубляет проблему (левые пробелы больше).
clarion "видит" наверное так - _005 :)
С уважением РА - Быть сильным не означает "никогда не падать". Быть сильным означает "ВСЕГДА СНОВА ПОДНИМАТЬСЯ!"

kreator
Ветеран
Сообщения: 2711
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Выровнять число по центру.

Сообщение kreator » 17 Май 2018, 14:56

gopstop2007 писал(а):
17 Май 2018, 14:44
kreator писал(а):
17 Май 2018, 10:04
Моноширинный шрифт только усугубляет проблему (левые пробелы больше).
clarion "видит" наверное так - _005 :)
Выравнивает не "5", а "____5". Вроде простая вещь, а никак. Хорошо, не часто мне такое надо :D .
С уважением, Kreator.

PavelNK
Активист
Сообщения: 180
Зарегистрирован: 15 Март 2011, 8:02

Выровнять число по центру.

Сообщение PavelNK » 17 Май 2018, 16:50

kreator писал(а):
17 Май 2018, 10:04
Моноширинный шрифт только усугубляет проблему (левые пробелы больше). Чтобы было понятно, привожу картинку:

1.png (3.24 КБ) 28 просмотров
Просто сразу стал понятен принцип выравнивания. Чтобы отображалось красиво, видимо нужно отображать, как строку или добавлять лидирующие нули

gopstop2007
Ветеран
Сообщения: 996
Зарегистрирован: 25 Март 2009, 21:55

Выровнять число по центру.

Сообщение gopstop2007 » 17 Май 2018, 16:56

если не принципиально то можно, @n5_ - и будет тип топ ) по середине
С уважением РА - Быть сильным не означает "никогда не падать". Быть сильным означает "ВСЕГДА СНОВА ПОДНИМАТЬСЯ!"

Аватара пользователя
vic7tar
Бывалый
Сообщения: 70
Зарегистрирован: 09 Февраль 2017, 20:12

Выровнять число по центру.

Сообщение vic7tar » 17 Май 2018, 21:28

А можно еще и @s5, а еще лучше - вставить два эмбеда (при открытии окна и на All Events поля ввода):
?entry{PROP:CenterOffSet} = -deformat(?entry{PROP:Text}) + len(?entry)
А вопрос вдогонку - а как определить максимальное число вводимых символов в поле ввода?
C10, Win10x64

kreator
Ветеран
Сообщения: 2711
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Выровнять число по центру.

Сообщение kreator » 18 Май 2018, 10:33

gopstop2007 писал(а):
17 Май 2018, 16:56
если не принципиально то можно, @n5_ - и будет тип топ ) по середине
Уже ближе. Но при таком формате появляется пробелы в качестве разделителя разрядов. Их бы ещё как-то убрать. Если поставить @n_5_, то опять всё плохо.
vic7tar писал(а):
17 Май 2018, 21:28
А можно еще и @s5, а еще лучше - вставить два эмбеда (при открытии окна и на All Events поля ввода):
?entry{PROP:CenterOffSet} = -deformat(?entry{PROP:Text}) + len(?entry)
Вот этих движух не хочется совсем. При @s5 нужно как-то убирать ноль (смириться можно, но привычку видеть пустоту при ноле не убить).
vic7tar писал(а):
17 Май 2018, 21:28
А вопрос вдогонку - а как определить максимальное число вводимых символов в поле ввода?
Если ко мне вопрос, то у меня данные поля ReadOnly. А вообще, если формат @n5, то больше пяти цифр ввести не получится.
С уважением, Kreator.

Аватара пользователя
vic7tar
Бывалый
Сообщения: 70
Зарегистрирован: 09 Февраль 2017, 20:12

Выровнять число по центру.

Сообщение vic7tar » 18 Май 2018, 11:45

kreator писал(а):
18 Май 2018, 10:33
А вообще, если формат @n5, то больше пяти цифр ввести не получится.
Наверно неправильно задал вопрос. Имел ввиду что-то типа len=поле{prop:макс_длина_поля_ввода_в_символах} в рунтайме.
А чем второй вариант не устраивает?
C10, Win10x64

Ал
Ветеран
Сообщения: 704
Зарегистрирован: 08 Июль 2005, 5:48
Откуда: Зеленоград/Московская обл./Россия

Выровнять число по центру.

Сообщение Ал » 18 Май 2018, 12:16

...@s5b :?:

kreator
Ветеран
Сообщения: 2711
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Выровнять число по центру.

Сообщение kreator » 18 Май 2018, 12:31

Ал писал(а):
18 Май 2018, 12:16
...@s5b :?:
Такой формат не существует.
vic7tar писал(а):
18 Май 2018, 11:45
А чем второй вариант не устраивает?

Ну я выкрутился чуть по другому, динамически формат задаю в момент расчёта суммы. Как-то так.
С уважением, Kreator.

Ответить