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

Вниз

DrawGrig - исчезающие картинки.   Найти похожие ветки 

 
Pavelkq   (2009-01-08 18:54) [0]

Только начал осваивать компонент. Пишу следующее:
 DrawGrid1.Visible:=true;
 FName:="";
 if OpenPictureDialog1.Execute then
   FName:=OpenPictureDialog1.FileName;
 if FName="" then exit;
 MyBMP := TBitmap.Create;
 MyJPEG := TJPEGImage.Create;

 MyJPEG.LoadFromFile(FName);
 MyBMP.Assign( MyJPEG );

 Rect:= DrawGrid1.CellRect(0, 0);
 DrawGrid1.Canvas.Brush.Bitmap:=MyBMP;
 DrawGrid1.Canvas.FillRect(Rect);
 MyJPEG.Free;
 MyBMP.Free;

Картинка чудесно отрисовывается, но когда над ней проплывают другие окна или сворачиваю/разворачиваю свою форму, картинка исчезает, ячейка остается пустой. Где тут собака порылась?


 
Pavelkq   (2009-01-08 21:06) [1]

Хм, перепробовал разные методы:
 Rect:= DrawGrid1.CellRect(1, 0);
 DrawGrid1.Canvas.StretchDraw(Rect,MyBMP);

или
 Rect:= DrawGrid1.CellRect(1, 0);
 DrawGrid1.Canvas.Draw(0,0,MyBMP);

Результат одинаков. Может дело в каких-то свойстах DrawGrid-a? Или надо обработать собыние OnDrawCell? Что делать?


 
Pavelkq   (2009-01-08 21:48) [2]

Создал обработчик

procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol, ARow: Integer;
 Rect: TRect; State: TGridDrawState);
begin
DrawGrid1.Canvas.StretchDraw(Rect,bmp);
end;

Теперь после занесения в каждую ячейку новой картинки все картинки заменяются на нее. Люди, помогите, пожалуйста!


 
Pavelkq   (2009-01-08 22:06) [3]

Интернет меня уговорил, решил попробовать ImageList.
Приписываю
 ImageList1.Add(MyBMP,nil);
Но голова уже не соображает, как запихать в ячейки DrawGrid-a все сореджимое ImageList-a?


 
Германн ©   (2009-01-08 22:14) [4]

A draw grid (TDrawGrid) displays arbitrary data in tabular format. Write an OnDrawCell event handler to fill in the cells of the grid.


 
KilkennyCat ©   (2009-01-08 23:00) [5]

Мытарства твои понятны. А цель не ясна.
В конечном итоге, что ты хочешь сделать-то? Фон у грида?


 
Pavelkq   (2009-01-09 09:33) [6]

У меня имеется некий текст, который отображается в Memo. Под ним нарисовал DrawGrig и хочу чтобы к каждому тексту прикреплялись фотографии. Вся эта конструкция хранится с БД. Короче, надо сделать просто перечисление привязанных к определенному тексту фотографий. + возможность самой привязки/отвязки.


 
KilkennyCat ©   (2009-01-09 11:28) [7]


> Pavelkq   (09.01.09 09:33) [6]


ну тогда вообще всем выше сказанное непонятно.
в 7 есть пример, вроде и в 6-ке он также был :C:\Program Files\Borland\Delphi7\Demos\Db\FishFact


 
Плохиш ©   (2009-01-09 14:16) [8]


> Pavelkq   (08.01.09 21:48) [2]
>
> Создал обработчик
>
> procedure TForm1.DrawGrid1DrawCell(Sender: TObject; ACol,
>  ARow: Integer;
>  Rect: TRect; State: TGridDrawState);
> begin
> DrawGrid1.Canvas.StretchDraw(Rect,bmp);
> end;
>
> Теперь после занесения в каждую ячейку новой картинки все
> картинки заменяются на нее. Люди, помогите, пожалуйста!
>

И кто-такой этот бмп?


 
Pavelkq   (2009-01-09 22:09) [9]

Длого мучился и получилось все. Действительно раскусил OnDrawCel + ImageList.
bmp: tbitmap


 
Плохиш ©   (2009-01-10 00:16) [10]


> Действительно раскусил OnDrawCel + ImageList.

Велосипед с треугольными колёсами.

> bmp: tbitmap
>

Не об этом спрашивалось.



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

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

Наверх




Память: 0.49 MB
Время: 0.012 c
15-1230372262
инструкция
2008-12-27 13:04
2009.02.22
при перезаагрузке/выключении вылазит ошибка:


15-1230012779
Slider007
2008-12-23 09:12
2009.02.22
С днем рождения ! 23 декабря 2008 вторник


3-1215423644
alles
2008-07-07 13:40
2009.02.22
Как работать с индексами таблицы dbf?


15-1230290011
GEN++
2008-12-26 14:13
2009.02.22
Есть вакансия программиста С для микроконтроллеров ATMEL


2-1231582211
Tonich
2009-01-10 13:10
2009.02.22
Фильтр данных