Вниз
Скачать: CL | DM;

Снимок экрана   Найти похожие ветки 

← →
4ern61sh   (2004-02-22 22:24) [0]

Привет, всем!
Как в Delphi сделать кнопку(button1), которая копировала бы в компонент TImage весь рабочий стол(т.е. все иконки, окна, работающие проги, пуск и т.д.)?


← →
Dimaxx ©   (2004-02-22 23:39) [1]

procedure TForm1.Button1Click(Sender: TObject);
var DC: HDC;
begin
DC:=GetDC(0);
Img.Picture.Bitmap:=TBitmap.Create;
Img.Picture.Bitmap.Width:=1024;
Img.Picture.Bitmap.Height:=768;
BitBlt(Img.Picture.Bitmap.Canvas.Handle,0,0,Img.Width,Img.Height,DC,Left,Top,SRCCOPY);
ReleaseDC(0,DC);
Img.Repaint;
end;


← →
Dimaxx ©   (2004-02-22 23:41) [2]

Left, Top задают верхний левый угол копируемой области (для всего экрана поставить оба 0).


← →
reticon ©   (2004-02-22 23:50) [3]

вместо

Img.Picture.Bitmap.Width:=1024;
Img.Picture.Bitmap.Height:=768;

лучше

Img.Picture.Bitmap.Width:=Screen.Width;
Img.Picture.Bitmap.Height:=Screen.Height;


← →
Dimaxx ©   (2004-02-24 23:25) [4]

Эт из примера выдернул, поэтому осталось так.


← →
Defunct ©   (2004-02-24 23:40) [5]

Dimaxx © (22.02.04 23:39) [1]
Можно и так:

procedure TForm1.Button2Click(Sender: TObject);
Var Canvas:TCanvas;
Begin
Try
Canvas := TCanvas.Create;
Canvas.Handle := GetDC(0);
Image1.Canvas.CopyRect(Screen.DesktopRect, Canvas, Screen.DesktopRect);
Finally
Canvas.Free;
End;
End;



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.009 c
1-12420
Alexis
2004-02-22 15:54
2004.03.05
консольное приложение без окна


1-12336
OlimPer
2004-02-21 14:36
2004.03.05
Опять ShellLIstView


1-12362
Elritar
2004-02-25 05:05
2004.03.05
Nested COM objects (непереводимый диалект)


1-12419
Dysan
2004-02-24 16:00
2004.03.05
ошибка при возвращении функцией интерфейса в COM


8-12453
alexay
2003-11-03 12:21
2004.03.05
Организация просмотра многостраничного файла TIFF GROUP 4




   Наверх