| 
| 
 | Вопрос # 4 157/ вопрос открыт / | 
 |  Здравствуйте, эксперты!У меня вот такой вопрос к вам:
 Я хочу сделать на Делфи 7 прогу которая будет делать сриншот с экрана и ставить себе на форму(в окно)в качестве фона этот сриншот десктопа,хотел спросить возможно ли это?
 жду ваших советов и предложений.
 Заранее благодарю.
 
|  |   Вопрос задал: Kubanych (статус: Посетитель)Вопрос отправлен: 14 мая 2010, 12:57
 Состояние вопроса: открыт, ответов: 1.
 |  Ответ #1. Отвечает эксперт: IlluminatI Здравствуйте, Kubanych!Кидаешь на форму TImage, в свойстве Align ставишь alClient. В событии формы onCreate пишешь CaptureScreen(Image1.Picture.Bitmap); (код в приложении).
 Приложение:Переключить в обычный режим procedure CaptureScreen(ABitmap: TBitmap);const  CAPTUREBLT = $40000000;var  hdcScreen: HDC;  hdcCompatible: HDC;  //bmp: TBitmap;  hbmScreen: HBITMAP;begin  // Create a normal DC and a memory DC for the entire screen. The  // normal DC provides a "snapshot" of the screen contents. The  // memory DC keeps a copy of this "snapshot" in the associated  // bitmap.   hdcScreen := CreateDC('DISPLAY', nil, nil, nil);  hdcCompatible := CreateCompatibleDC(hdcScreen);  // Create a compatible bitmap for hdcScreen.   hbmScreen := CreateCompatibleBitmap(hdcScreen,    GetDeviceCaps(hdcScreen, HORZRES),    GetDeviceCaps(hdcScreen, VERTRES));   // Select the bitmaps into the compatible DC.  SelectObject(hdcCompatible, hbmScreen);  ABitmap.Handle := hbmScreen;  BitBlt(hdcCompatible,    0, 0,    ABitmap.Width, ABitmap.Height,    hdcScreen,    0, 0,    SRCCOPY or CAPTUREBLT);   DeleteDC(hdcScreen);  DeleteDC(hdcCompatible);end;
|  | Ответ отправил: IlluminatI (статус: 2-ой класс)Время отправки: 14 мая 2010, 13:40
 
 |  
 Мини-форум вопросаВсего сообщений: 7; последнее сообщение — 18 мая 2010, 10:41; участников в обсуждении: 3. 
|   | Ерёмин А.А. (статус: *Администратор), 14 мая 2010, 13:01 [#1]:Да, возможно   |  
|   | Kubanych (статус: Посетитель), 14 мая 2010, 13:15 [#2]:супер, а каким образом? не могли вы мне подсказать главный код.
 |  
|   | DNK (статус: Студент), 14 мая 2010, 13:39 [#3]:Скриншот в качестве фона для формы. Мне такая дикая идея даже голову не приходила. %-D "Digital Networked Knight" |  
|   | DNK (статус: Студент), 14 мая 2010, 14:26 [#4]:Другое дело. "Digital Networked Knight" |  
|   | Kubanych (статус: Посетитель), 14 мая 2010, 14:30 [#5]:ну раз узнал мою идею,подскажи как ето сделать. |  
|   | DNK (статус: Студент), 14 мая 2010, 18:58 [#6]:А чем не нравится способ предоставленный IlluminatI? "Digital Networked Knight" |  
|   | Kubanych (статус: Посетитель), 18 мая 2010, 10:41 [#7]:  Всё вопрос решил. Спасибо IlluminatI
 |  Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте. |