Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2006.03.19;
Скачать: CL | DM;

Вниз

TStringGrid - расширить   Найти похожие ветки 

 
Proxytel ©   (2005-09-22 01:33) [0]

Подскажите, требуется создать TStringGrid в котором:
первый столбец - обычный не редактируемый текстовый(по умолчанию);
второй столбец - это поля с одними только чекбоксами,
третий - текстовый мог бы просто редактироваться с клавиатуры,
четвертый - текстовый редактируемый + при его фокусе в конце поля появляется кнопка

В принципе я не знаю как сделать только чекбоксы и кнопки в конце полей, понятно, что остальное по умолчанию и так все есть. Указал по причине того, что не знаю как сделать один столбец не редактируемым, а другой редактируемым в одном и том же TStringGrid :(


 
MBo ©   (2005-09-22 09:37) [1]

В OnSelectCell в заdисимости от номера столбца выставлять goEditing в Options


 
Vcoder ©   (2005-09-22 10:15) [2]

Насчет чекбоксов есть идея (правда муторная) - поставитьDefaulDrawing в False и прорисовывать все самому в событии OnDrawCell. Но прорисовывать придется все.

Насчет появления кнопки - заранее разместить кнопку на форме, причем свойство Visible выставить в False, затем в StringGrid.OnSelectCell в зависимости, в каком столбце выделена ячейка, устанавливать координаты и свойство Visible кнопки соответствующим образом.


 
Proxytel ©   (2005-09-22 11:44) [3]

Вобще честно говоря насчет зарание расположеных на форме кнопок - это идея, что-то я не подумал об этом сразу. Может быть тогда и чекбоксы покидать поверх TStringGrid?
Но не получится ли ситуации когда поедет размер ячеек и поедет вся эта хрупкая конструкция? Бывают же случаи на разных платформах и при разных размерах шрифтов системы.


 
Vcoder ©   (2005-09-22 12:13) [4]

Кнопка не поедет - ее координаты ты будешь определять каждый раз перед тем, как сделать видимой.

А чекбоксы еще как поедут - когда ты будешь прокручивать таблицу, крайне сложно будет это отследить и двигать толпу чекбоксов. На мой взгляд проще написать свой обработчик OnDrawCell и рисовать в каждой ячейке что душе угодно, например изображения чекбоксов.


 
Proxytel ©   (2005-09-22 12:36) [5]

Как определить координаты b размер ячейки в TStringGrid ?


 
Vcoder ©   (2005-09-22 13:41) [6]

Все здесь:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);


Вот этот Rect и содержит координаты выделенной ячейки.


 
Proxytel ©   (2005-09-23 13:12) [7]

Нету ни у кого случайно примерчика работы с TStringGrid ?
Есть ли ему упрощенная альтернатива?


 
kami ©   (2005-09-23 19:03) [8]

Сходите на Торри, и скачайте TSortGrid (архив называется bksgrid), по тому, что требуется - чекбоксы, кнопки и стандартные Edit`ы - то что нужно.


 
Proxytel ©   (2005-09-24 18:36) [9]

Как отформатировать текст разным способом для каждого столбца TStringGrid ? (например шрифт и выравнивание- по центру или слева)


 
wicked ©   (2005-09-24 22:29) [10]

или найти на торрике TGridView (тот, что бесплатный; есть еще и платный - это разные компоненты)....



Страницы: 1 вся ветка

Текущий архив: 2006.03.19;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.038 c
2-1141320061
Alex7
2006-03-02 20:21
2006.03.19
Неисправность


1-1140081895
syte_ser78
2006-02-16 12:24
2006.03.19
переименовка группы Action в ActionManager


2-1141639332
Dysan
2006-03-06 13:02
2006.03.19
как заменить программе саму себя?


2-1141402179
Fenix
2006-03-03 19:09
2006.03.19
Редактирование в RichEdit


2-1141657562
Adios
2006-03-06 18:06
2006.03.19
Не работает процедура