8 / 8 / 2
Регистрация: 01.12.2015
Сообщений: 195
|
||||||
1 | ||||||
Вертикальная ориентация текста30.09.2017, 14:02. Показов 3048. Ответов 8
Метки нет (Все метки)
Добрый день Уважаемые форумчане! Прошу Вашей помощи для доработки кода, представленного ниже:
0
|
30.09.2017, 14:02 | |
Ответы с готовыми решениями:
8
Ориентация ScrollBar Вертикальная полоса в StringGrid TPageControl вертикальная прокрутка TabSheets выровненых по левому краю Вертикальная ориентация текста |
Житель Земли
|
|
30.09.2017, 14:57 | 2 |
это правильно. но сработает только если стиль кисти равен bsSolid. лучше на всякий случай уставить кисть в этот ржим
а еще лучше отключить у таблицы DefaultDrawing и все рисовать самому - фиксированные ячейки, обычные, выделенные. при DefaultDrawing и собственной отрисовке ипроисходит двойное рисование - сначала система рисует ячейку, затем обработчик drawcell
0
|
8 / 8 / 2
Регистрация: 01.12.2015
Сообщений: 195
|
|
30.09.2017, 15:22 [ТС] | 3 |
при DefaultDrawing и собственной отрисовке и происходит двойное рисование - сначала система рисует ячейку, затем обработчик drawcell.
??? Можно ли тогда перед тем, как обработчик drawcell возьмется за свою работу, удалить рисунок ячейки, начертанный системой? при отключении DefaultDrawing, получается избавиться от горизонтальной надписи, при этом пропадают еще и названия строк, весь грид теряет окраску какая у всей формы, я понял что нужно все вручную отрисовывать (выше об этом сказано), но скажу честно я в этом (рисовании) очень слаб(((
0
|
8 / 8 / 2
Регистрация: 01.12.2015
Сообщений: 195
|
|
30.09.2017, 19:48 [ТС] | 4 |
еще: названия заголовков я создаю в обработчике TForm1.FormShow, может в этом моя ошибка? и нужно объявлять названия заголовков после того как произойдет событие drawcell?
Добавлено через 4 часа 13 минут Наверное никто не сталкивался... но все равно спасибо!
0
|
пофигист широкого профиля
4735 / 3168 / 860
Регистрация: 15.07.2013
Сообщений: 18,255
|
|
01.10.2017, 01:15 | 5 |
А другого выхода и нет. TStringGrid очень сырой компонент. Так что либо DefaultDrawing = True и рисуешь всё сам, либо DefaultDrawing = False и VCL сначала рисует своё, потом ты "замазываешь мазилкой" то что она нарисовала, а затем уже рисуешь своё.
P.S. Кстати я сталкивался, но у меня была проблема только с рисованием фиксированных строк и столбцов.
1
|
Житель Земли
|
|
01.10.2017, 09:57 | 7 |
true/false местами поменять
Добавлено через 8 минут чтобы красиво и легко рисовать все ячейки при отключенном DefaultDrawing, нужно создать наследника грида с переопределенным методом рисования, т.к. иначе не получить доступа к необходимым методам. если никто не приведет пример, завтра напишу заготовку. to be continued...
1
|
Житель Земли
|
|||||||||||||||||||||
02.10.2017, 09:54 | 8 | ||||||||||||||||||||
Сообщение было отмечено ВасильевСА как решение
Решение
итак, создадим локального наследника TStringGrid с необходимым функционалом. Описываем класс в разделе type ПЕРЕД описанием формы (это важно).
заполнить данными
1
|
Житель Земли
|
|
02.10.2017, 10:15 | 9 |
поэкспериментировал. некоторые шрифты в вертикальном начертании выглядят ничего, а некоторые хуже, а некоторые вообще не ориентируют буквы на 90 градусов (Script)
1
|
02.10.2017, 10:15 | |
02.10.2017, 10:15 | |
Помогаю со студенческими работами здесь
9
Вертикальная/горизонтальная ориентация мобильных устройств WPF горизонтальная/вертикальная ориентация компонент окна с разделителем Ориентация текста в ячейке Ориентация текста StringGrid Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |