Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

DBGrid & ButtonStyle [D7, MSSQL]


DimonNew ©   (2005-02-16 15:59:00) 

Привет, подскажите пожалуста. При ButtonStyle=cbcEllipsis в столбце появляется кнопка, но появляется она только в момент редактирования.  Можно ли ее отображать всегда, т.е отображать все кнопки во всех записях одновременно, а не момент редактирования, и по середине столбца?


DimonNew   (2005-02-17 11:33:00) [1]

Спасибо большое, буду разбираться.


Vlad   (2005-02-17 11:24:00) [2]


> DimonNew   (17.02.05 10:37) [3]

Кнопки рисуются как раз с помощью DrawFrameControl, надпись выводится методом Canvas.TextOut
Для того чтобы имитировать нажатие кнопки - разберись с тем что такое InplaceEditor (класс TInplaceEdit). Тебе нужно написать свой, взамен стандартного.


DimonNew   (2005-02-17 10:37:00) [3]

А средствами DBGrid-а, обычного. И размер хотелось бы такой же как у ButtonStyle=cbcEllipsis.

Нашел я два способа вставки кнопочки в ячейку, без использования ButtonStyle.
1 - использование WinAPI DrawFrameControl, хотел сделать аналогично CheckBox (в Королевстве Дельфи есть такой пример), НО
как передать надпись на кнопку и как имитировать нажатие - не получилось.
2 - поместить обычную кнопку на форму, сделать ее невидимой и подставлять в ячейку, НО все бы ничего, только если строк больше одной, то все кнопки мерцают (кроме одной, одна почему-то нормально себя ведет)

Помогите пожалуста разобраться с этой проблемой.


Rule   (2005-02-16 19:13:00) [4]

вообщето юзай DBGridEh (EhLib) бесплатно и кнопочек там от дужи и как хочешь их можешь сделать ....


Desdechado   (2005-02-16 18:17:00) [5]

и во всю ширину столбца, так чтоб данные закрывала, да?


Наверх

Титульная страница Поиск, карта сайта Написать письмо