![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
TStringGrid - расширить [D6, D7, Win2k, WinXP]
Proxytel © (2005-09-22 01:33:00)Подскажите, требуется создать TStringGrid в котором:
первый столбец - обычный не редактируемый текстовый(по умолчанию);
второй столбец - это поля с одними только чекбоксами,
третий - текстовый мог бы просто редактироваться с клавиатуры,
четвертый - текстовый редактируемый + при его фокусе в конце поля появляется кнопка
В принципе я не знаю как сделать только чекбоксы и кнопки в конце полей, понятно, что остальное по умолчанию и так все есть. Указал по причине того, что не знаю как сделать один столбец не редактируемым, а другой редактируемым в одном и том же TStringGrid :(
wicked (2005-09-24 22:29:00) [1]или найти на торрике TGridView (тот, что бесплатный; есть еще и платный - это разные компоненты)....
Proxytel (2005-09-24 18:36:00) [2]Как отформатировать текст разным способом для каждого столбца TStringGrid ? (например шрифт и выравнивание- по центру или слева)
kami (2005-09-23 19:03:00) [3]Сходите на Торри, и скачайте TSortGrid (архив называется bksgrid), по тому, что требуется - чекбоксы, кнопки и стандартные Edit`ы - то что нужно.
Proxytel (2005-09-23 13:12:00) [4]Нету ни у кого случайно примерчика работы с TStringGrid ?
Есть ли ему упрощенная альтернатива?
Vcoder (2005-09-22 13:41:00) [5]Все здесь:
procedure TForm1.StringGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
Rect: TRect; State: TGridDrawState);
Вот этотRectи содержит координаты выделенной ячейки.
Proxytel (2005-09-22 12:36:00) [6]Как определить координаты b размер ячейки в TStringGrid ?
Vcoder (2005-09-22 12:13:00) [7]Кнопка не поедет - ее координаты ты будешь определять каждый раз перед тем, как сделать видимой.
А чекбоксы еще как поедут - когда ты будешь прокручивать таблицу, крайне сложно будет это отследить и двигать толпу чекбоксов. На мой взгляд проще написать свой обработчикOnDrawCellи рисовать в каждой ячейке что душе угодно, например изображения чекбоксов.
Proxytel (2005-09-22 11:44:00) [8]Вобще честно говоря насчет зарание расположеных на форме кнопок - это идея, что-то я не подумал об этом сразу. Может быть тогда и чекбоксы покидать поверх TStringGrid?
Но не получится ли ситуации когда поедет размер ячеек и поедет вся эта хрупкая конструкция? Бывают же случаи на разных платформах и при разных размерах шрифтов системы.
Vcoder (2005-09-22 10:15:00) [9]Насчет чекбоксов есть идея (правда муторная) - поставить
DefaulDrawingв False и прорисовывать все самому в событииOnDrawCell. Но прорисовывать придется все.
Насчет появления кнопки - заранее разместить кнопку на форме, причем свойствоVisibleвыставить в False, затем вStringGrid.OnSelectCellв зависимости, в каком столбце выделена ячейка, устанавливать координаты и свойствоVisibleкнопки соответствующим образом.
MBo (2005-09-22 09:37:00) [10]В OnSelectCell в заdисимости от номера столбца выставлять goEditing в Options