![]() |
|
#1
|
|||
|
|||
![]() Вопрос следущий,как по клику на картинку в shelllistview показывать её эскиз в Paintbox ?
Последний раз редактировалось Amzi, 18.10.2012 в 13:37. |
#2
|
||||
|
||||
![]() -создать обработчик OnClick
-убедиться что кликнули на картинке (по расширению) -загрузить картинку в какой-нибудь TхGraphic -нарисовать на PaintBox Пишу программы за еду. __________________ |
#3
|
|||
|
|||
![]() Убеждаться, что кликнули по картинке не нужно, так как есть фильтр который в shelllistview отображает только картинки.
а вот как передать картинку из shelllistview в PaintBox, можно немного поподробнее? |
#4
|
||||
|
||||
![]() Цитата:
Тебе нужно получить путь и имя файла у shelllistview, потом загрузить эту картинку например в TBitmap и с него копировать на канву PaintBox'а. |
#5
|
||||
|
||||
![]() Код:
type TForm1 = class(TForm) PaintBox1: TPaintBox; Image1: TImage; procedure FormCreate(Sender: TObject); procedure PaintBox1Paint(Sender: TObject); ... procedure TForm1.FormCreate(Sender: TObject); begin Image1.Picture.LoadFromFile('clouds.bmp'); PaintBox1.OnPaint:=PaintBox1Paint; end; procedure TForm1.PaintBox1Paint(Sender: TObject); begin PaintBox1.Canvas.StretchDraw(PaintBox1.ClientRect, Image1.Picture.Graphic); end; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
Amzi (18.10.2012)
|
#6
|
|||
|
|||
![]() Цитата:
Код:
procedure TForm2.sShellListView1Click(Sender: TObject); var path: string; begin for i:=0 to sShellListView1.SelCount-1 do begin path := sShellListView1.Folders[sShellListView1.GetNextItem(sShellListView1.Selected, sdAll,[isSelected]).Index+i-1].PathName; end; end; |
#7
|
||||
|
||||
![]() Код:
Image1.Picture.LoadFromFile(ShellListView1.Folders[ShellListView1.ItemIndex].PathName); PaintBox1.Invalidate; Пишу программы за еду. __________________ |
Этот пользователь сказал Спасибо NumLock за это полезное сообщение: | ||
Amzi (18.10.2012)
|
#8
|
|||
|
|||
![]() Спасибо большое, все работает!
![]() |