![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
Как добавить индикатор прогресса в ячейку String Grid? [D6, WinXP]
eugene32 © (2004-10-22 16:12:00)Как добавить индикатор прогресса (Progress Bar, например) в ячейку String Grid?
Помогите начинающему ... :)
eugene32 (2004-10-22 20:33:00) [1]На этих ссылка точно есть всё, что может понадобиться.
Можно и тему закрывать.:)
eugene32 (2004-10-22 20:22:00) [2]Спааааасибо, мужики.... Ща попробую :))
Lin7 (2004-10-22 17:09:00) [3]Посмотри здесь
http://www.delphikingdom.ru/helloworld/nogrid.htm
и здесь
http://www.delphikingdom.com/asp/viewitem.asp?UrlItem=/helloworld/dbgridcolor.htm
и это, если пригодится:
Автор: Joel E. Cant.
Пример демонстрирует добавление любого количества чекбоксов в StringGrid.
В этом примере необходимо добавить TPanel, а в саму панель включить TstringGrid.
Так же необходимо добавить невидимый TcheckBox на форму. Затем добавьте
5 колонок и 4 строки в объект StringGrid.
procedure TForm1.FormCreate(Sender: TObject);
begin
{Высоту у combobox не получится установить, поэтому мы будем}
{подгонять размер у грида под размер combobox!}
StringGrid1.DefaultRowHeight := ComboBox1.Height;
{Скрываем combobox}
ComboBox1.Visible := False;
end;
procedure TForm1.ComboBox1Change(Sender: TObject);
begin
{Получаем выбранный элемент из ComboBox и помещаем его в грид}
StringGrid1.Cells[StringGrid1.Col,
StringGrid1.Row] :=
ComboBox1.Items[ComboBox1.ItemIndex];
ComboBox1.Visible := False;
StringGrid1.SetFocus;
end;
procedure TForm1.ComboBox1Exit(Sender: TObject);
begin
{Получаем выбранный элемент из ComboBox и помещаем его в грид}
StringGrid1.Cells[StringGrid1.Col,
StringGrid1.Row] :=
ComboBox1.Items[ComboBox1.ItemIndex];
ComboBox1.Visible := False;
StringGrid1.SetFocus;
end;
procedure TForm1.StringGrid1SelectCell(Sender: TObject; Col,
Row: Integer; var CanSelect: Boolean);
var
R: TRect;
begin
if ((Col = 3) AND
(Row <> 0)) then begin
{Размер и расположение combobox подгоняем под ячейку}
R := StringGrid1.CellRect(Col, Row);
R.Left := R.Left + StringGrid1.Left;
R.Right := R.Right + StringGrid1.Left;
R.Top := R.Top + StringGrid1.Top;
R.Bottom := R.Bottom + StringGrid1.Top;
ComboBox1.Left := R.Left + 1;
ComboBox1.Top := R.Top + 1;
ComboBox1.Width := (R.Right + 1) - R.Left;
ComboBox1.Height := (R.Bottom + 1) - R.Top;
{Показываем combobox}
ComboBox1.Visible := True;
ComboBox1.SetFocus;
end;
CanSelect := True;
end;
Взято с Исходников.ru http://www.sources.ru
Алексей Петухов (2004-10-22 16:41:00) [4]
StringGrid.Canvas.Font.Color :=clRed;
StringGrid.Canvas.TextRect(Rect,Rect.Left+3,Rect.Top+2,'xxx');
Признаюсь, не проверял...
eugene32 (2004-10-22 16:25:00) [5]Я понимаю, что OnDrawCell!
А что в нём делать то, хоть примерно?
Спасибо за помощь :)
Алексей Петухов (2004-10-22 16:13:00) [6]OnDrawCell?