Справочник функций

Ваш аккаунт

Войти через: 
Забыли пароль?
Регистрация
Информацию о новых материалах можно получать и без регистрации:

Почтовая рассылка

Подписчиков: -1
Последний выпуск: 19.06.2015

Доступ к отдельным ячейкам String/DrawGrid

1.6K
25 июля 2007 года
Shtirlitz
145 / / 31.07.2006
Добрый вечер!
Как, если возможно, закрасить отдельную ячейку(или несколько) String/Draw Grid в заданный цвет? И если кто знает объясните мне для чего существует DrawGrid? Какого его основное назначение, и где можно найти нормальное описание с примерами всех свойств и методов String/DrawGrid? Заранее благодарен!
2.0K
25 июля 2007 года
nevile
138 / / 05.01.2007
Цитата:
Компонент drawgrid используется для создания в приложении таблицу которая может содержать графические изображения. Этот компонент подобен компоненту stringgrid поскольку последний является производным от drawgrid. поэтому в drawgrid присутствуют все свойства sgкроме относящихся к тексту.... sd может хранить в ячейках и изображения, и текст. А если вы захотите внести текст в dg, то вам понадобится использовать метод вывода текста на канву, что не очень удобно.


Цитата из книги Архангельский "Программирование в delphi 7"

1.6K
25 июля 2007 года
Shtirlitz
145 / / 31.07.2006
А как мне обратиться к конкретной ячейке DrawGrid? Как мне например нужным ячейкам задать определённый цвет, или в нужную ячейку поместить какое-либо изображение?
257
25 июля 2007 года
kosfiz
1.6K / / 18.09.2005
Цитата: Shtirlitz
А как мне обратиться к конкретной ячейке DrawGrid? Как мне например нужным ячейкам задать определённый цвет, или в нужную ячейку поместить какое-либо изображение?


используй CellRect и Canvas.FillRect для закраски, например:

 
Код:
DrawGrid1.Canvas.Brush.Color:=clRed;
DrawGrid1.Canvas.FillRect(DrawGrid1.CellRect(1,1));
1.6K
25 июля 2007 года
Shtirlitz
145 / / 31.07.2006
Спасибо! Всё работает! Но возник ещё один вопрос: существует ли функция для закрашивания целой области, например Rect(1,1,5,5).
257
25 июля 2007 года
kosfiz
1.6K / / 18.09.2005
может и есть: я искать не стал. можно свою процедурку сделать впринципе, например:
Код:
procedure FillDrawGridRect(DrawGrid: TDrawGrid; ibCol, ibRow, ieCol, ieRow, ColorNumber: word);
var
i, j: Integer;
begin
if (ibCol<=ieCol) and (ibRow<=ieRow) and (DrawGrid.ColCount-1>=ieCol) and (DrawGrid.RowCount-1>=ieRow) then
  begin
    DrawGrid.Canvas.Brush.Color:=ColorNumber;
    for i:=ibCol to ieCol do
      for j:=ibRow to ieRow do
        DrawGrid.Canvas.FillRect(DrawGrid.CellRect(i,j));
  end;
end;
.....................
использование:
.....................
FillDrawGridRect(DrawGrid1,1,1,5,5,clRed);

кстати ты там еще посмотри и проверочки может какие-нибудь добавишь.
1.6K
25 июля 2007 года
Shtirlitz
145 / / 31.07.2006
Понял! Спасибо! А где кроме как в Справочной системе Delphi можно найти описание(подробное) всех свойств и методов стандартных компонентов. А то каждый раз приходиться искать и не всегда находить?
10
25 июля 2007 года
Freeman
3.2K / / 06.03.2004
В Google.
Реклама на сайте | Обмен ссылками | Ссылки | Экспорт (RSS) | Контакты
Добавить статью | Добавить исходник | Добавить хостинг-провайдера | Добавить сайт в каталог