Выравнивание текста в колонке грида | |
---|---|
FaustGreen Сообщений: 144 Дата регистрации: 26.06.2023 |
Есть колонка в гриде:
Если для этой колонки задать выравнивание "middle center", то наблюдается поведение: 1) При небольшой ширине калонки текст выравнивается по левой стороне. 2) При большой ширине колонки текст выравниает ПРИМЕРНО по центру. Как сделать, чтобы независимо от ширины колонки выравнивание было по центру? Этот код помогает, но как то некрасиво
Исправлено 3 раз(а). Последнее : FaustGreen, 24.05.24 13:50 |
Re: Выравнивание текста в колонке грида | |
---|---|
AndyNigmatec Сообщений: 1657 Откуда: Волгоград Дата регистрации: 28.06.2015 |
А что некрасивого то? ну я бы RTRIM() использовал - но суть та же ... еще есть вариант - тип поля не c(50) а v(50)
|
Re: Выравнивание текста в колонке грида | |
---|---|
akvvohinc Автор Сообщений: 4497 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Непонятно, что именно некрасиво - использовать функцию ALLTRIM() или результат все равно плохо центрируется (не совсем по центру) . Если первое, то именно так и решается вопрос - ведь центрироваться, видимо, должна строка без учета "лишних" пробелов - они же тоже занимают некоторое место в поле. |
Re: Выравнивание текста в колонке грида | |
---|---|
FaustGreen Сообщений: 144 Дата регистрации: 26.06.2023 |
Мой внутренний перфекционист протестует )
Я не представляю себе ситуации, когда мне в таблице в текстовом поле понадобится хранить что-то типа такого: "Строка____", где "____" - это пробелы. А по сему программа должна сама обрезать все лишнее. Дефолтное состояние строки в колонке грида по мне должно быть - строка с обрезанными пробелами (так как это сосотяние мы будем применять наиболее часто), а если нам по какой то неведомой причине захочется хранить еще и пробелы (перед или после строки), то для этого должна быть какая то отдельная настройка. Но не наооборот. А так мне приходится каждый раз дописывать лишние ALLTRIM()/RTRIM(), чтобы добиться дефолтного, в подавляющем количестве случаев, поведения. ps. Под "захочется хранить еще и пробелы " я тут имел ввиду отображение в гриде, а не способ хранения в памяти. Исправлено 2 раз(а). Последнее : FaustGreen, 24.05.24 15:51 |
Re: Выравнивание текста в колонке грида | |
---|---|
FaustGreen Сообщений: 144 Дата регистрации: 26.06.2023 |
Т.е. я бы хотел, чтобы по умолчанию все строки в текстовых колонках грида автоматически отображались без лишних пробелов.
Подумал, может кто то делает это как то подругому, а не через *TRIM(). |
Re: Выравнивание текста в колонке грида | |
---|---|
of63 Сообщений: 25766 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
() Ни в коем случае в полях таблиц БД не нужно хранить текст числового изображения (уже вопрос, чьего?) "изображение". Поверьте старому програмеру Есть тип - число, к тому же в фоксе интегер (32)? > А так мне приходится каждый раз дописывать лишние ALLTRIM()/RTRIM(), чтобы добиться дефолтного, в подавляющем количестве случаев, поведения. Да, и с чисовыми полями и с символьнымы нужно, придется поепаться, если будешь пользоваться фоксом. Вариантов нет. |
Re: Выравнивание текста в колонке грида | |
---|---|
of63 Сообщений: 25766 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
> программа должна сама обрезать все лишнее.
У проги, типа фокса, есть и изобразительная часть (и встроенные функции) и визуальная, в полях, которые мы ставим в наши обьекты при создании окна для юзера... Епаться надо лично, а не обсуждать пользу епли/или соседей, которые готовые продуты создали, или не создали, а провалялисб в кровати с бутылкой вина. |
Re: Выравнивание текста в колонке грида | |
---|---|
AndyNigmatec Сообщений: 1657 Откуда: Волгоград Дата регистрации: 28.06.2015 |
Про числа не понял к чему, ТС же написал - поле с(50).
Ну и особых "танцев" не вижу с использованием ALLTRIM(), единственное неудобство что при этом всплывающая подсказка (если текст не умещается по ширине столбца грида) не всплывает. Еще такой момент - мне вот как-то всегда эстетически претило выравнивание текста по центру по горизонтали - особенно если длина сильно разная в записях ... ну убого как-то смотрится, но это моя имха Исправлено 1 раз(а). Последнее : AndyNigmatec, 24.05.24 19:27 |
Re: Выравнивание текста в колонке грида | |
---|---|
of63 Сообщений: 25766 Откуда: Н.Новгород Дата регистрации: 13.02.2008 |
Ты про ф-ию фокса PADC() ?...
АндрейЮ эта функция сейчас тебе не пригодится, это функи,хобрважения/печати... <censored>писать известное ) Исправлено 1 раз(а). Последнее : ssa, 25.05.24 22:27 |
Re: Выравнивание текста в колонке грида | |
---|---|
akvvohinc Автор Сообщений: 4497 Откуда: Москва Дата регистрации: 11.11.2008 |
Цитата:Умолчания Фокса зашиты в базовых классах его объектов. А все свои умолчания программисты записывают в свои классы, производные от базовых. Вот и вам ничто не мешает создать свой класс для Column, заполнив в нём свойство Format значением "T". |
Re: Выравнивание текста в колонке грида | |
---|---|
Taran Сообщений: 13775 Откуда: Красноярск Дата регистрации: 16.01.2008 |
И даже вне грида. Не люблю центровку. Слишком дорого обходится если текст не помещается в textbox. |
Re: Выравнивание текста в колонке грида | |
---|---|
FaustGreen Сообщений: 144 Дата регистрации: 26.06.2023 |
В целом, да, но бывают исключения. Пример: поле "код", символьное, 10 знаков (ширина для каждой строки постоянная). Заголовок колонки чуть шире данных в колонке. При таком раскладе центрирование выглядит посимпатичнее (ИМХО). | Код продукта | |8597455454 | |8597455455 | |8597455456 | |8597455457 | | Код продукта | | 8597455454 | | 8597455455 | | 8597455456 | | 8597455457 | Плюс бывают запросы от пользователей типа: После колонки с цифровыми данными (выравнивание по правой части), идет колонка с текстовыми данными (выравнивание по левой части). Данные "сливаются", сделайте нам небольшой пробел между ними. | 2536849|Коляска детская| | 2536849 |Коляска детская| Исправлено 5 раз(а). Последнее : FaustGreen, 25.05.24 11:31 |
Re: Выравнивание текста в колонке грида | |
---|---|
sphinx Сообщений: 31719 Откуда: Каменск-Уральски Дата регистрации: 22.11.2006 |
Цитата: Если код всегда 10 цифр - я бы название колонки сделал бы КодПродукт и оставил бы выравнивание слева. ------------------ "Veni, vidi, vici!"(с) |
© 2000-2024 Fox Club  |