purebasic.info

PureBasic forum
Текущее время: Пн дек 17, 2018 10:56 am

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ 1 сообщение ] 
Автор Сообщение
 Заголовок сообщения: Пред-просмотр окна
СообщениеДобавлено: Пн дек 02, 2013 10:01 am 
Не в сети
доцент

Зарегистрирован: Сб июл 13, 2013 3:39 pm
Сообщений: 46
Благодарил (а): 10 раз.
Поблагодарили: 3 раз.
Пункты репутации: 0
Получаем привью окна обновляемое в реальном времени API
Системные требования: Windows Vista-7

Код:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
 
; ------------------------------------------------------------
; Author: Walt ( PB 5.11 )
; Email: walt88@mail.ru
; Date: 14-09-23
; Minimum operating systems: Windows Vista
; Demo: Yes
;
; ------------------------------------------------------------
;
;   Thumbnail Properties
;   Demo
;    
; ------------------------------------------------------------
Enumeration
  #Window_0
  #Window_1
  #TextGad
EndEnumeration
POS.POINT
POS\x = 250
POS\y = 250
Sz.SIZE
Elli.RECT
Elli\left = -1
Elli\top = -1
Elli\bottom = -1
Elli\right = -1
 
Structure THUMBNAIL ; DWM_THUMBNAIL_PROPERTIES Structure
  dwFlags.i
  rcD.RECT
  rcS.RECT
  opacity.a
  fVisible.b
  fSourceClientAreaOnly.i
EndStructure
 
;{ Members
 
; ms-help://MS.MSDNQTR.v90.en/winui/winui/desktopwindowmanager/reference/structures/dwm_thumbnail_properties.htm
 
; dwFlags
;           A bitwise combination of DWM Thumbnail Constants values indicating which members are set.
; rcDestination
;            The rectangle in the destination window the thumbnail will be rendered.
; rcSource
;            The rectangle specifying the region of the source window To use As the thumbnail. The Default is To use the entire window As the thumbnail.
; opacity
;            The opacity With which To render the thumbnail. 0 is fully transparent While 255 is fully opaque. The Default value is 255.
; fVisible
;            TRUE To make the thumbnail visible; FALSE to make the thumbnail invisible. The default is FALSE.
; fSourceClientAreaOnly
;            TRUE To only use the thumbnail source's client area; otherwise, FALSE; The default is FALSE.
;
; Header dwmapi.h
;}
 
OpenLibrary(0, "dwmapi.dll")
 
Prototype DwmExtendFrameIntoClientArea(s.l, *So)
DwmExtendFrameIntoClientArea.DwmExtendFrameIntoClientArea = GetFunction(0,"DwmExtendFrameIntoClientArea")
 
Prototype DwmRegisterThumbnail(hWnd.l, Wnd.l, *PT)
DwmRegisterThumbnail.DwmRegisterThumbnail = GetFunction(0,"DwmRegisterThumbnail")
 
Prototype DwmQueryThumbnailSourceSize(*h,*P)
DwmQueryThumbnailSourceSize.DwmQueryThumbnailSourceSize = GetFunction(0,"DwmQueryThumbnailSourceSize")
 
Prototype DwmUpdateThumbnailProperties(*a,*b)
DwmUpdateThumbnailProperties.DwmUpdateThumbnailProperties = GetFunction(0,"DwmUpdateThumbnailProperties")
 
; Delay(2000)
; Handle = ForegroundWindowGet()
 
Handle = OpenWindow (#Window_1,  0,  0,  200, 200,  "Windows Tool", _+
 #PB_Window_Tool | #PB_Window_MinimizeGadget | #PB_Window_ScreenCentered )
SetWindowColor(#Window_1,0)
TextGadget(#TextGad, 8, 8, 184, 164, "0", #PB_Text_Center)
SetGadgetColor(#TextGad, #PB_Gadget_BackColor, $4fbeda) : SetGadgetColor(#TextGad, #PB_Gadget_FrontColor, $ffc00f)
SetGadgetFont(#TextGad,LoadFont(4, "Comic Sans MS", 84, #PB_Font_Bold | #PB_Font_HighQuality))
 
;{--------------------------------------------------
hWnd = OpenWindow (#Window_0,  0,  0,  POS\x, POS\y,  "", #PB_Window_ScreenCentered )
SetWindowColor(#Window_0, 0)
 
Procedure rmmr()
  SetGadgetText(#TextGad, FormatDate("%ss", Date()))
EndProcedure
 
SetTimer_(WindowID(#Window_0), 1,200, @rmmr())
; ms-help://MS.MSDNQTR.v90.en/wmform11/htm/iwmreaderstreamclocksettimer.htm
 
DwmExtendFrameIntoClientArea(hWnd ,@Elli)
; ms-help://MS.MSDNQTR.v90.en/winui/winui/desktopwindowmanager/reference/functions/dwmextendframeintoclientarea.htm
 
DwmRegisterThumbnail(hWnd, Handle, @Thu)
; ms-help://MS.MSDNQTR.v90.en/winui/winui/desktopwindowmanager/reference/functions/dwmregisterthumbnail.htm
 
DwmQueryThumbnailSourceSize(Thu, @Sz)
; ms-help://MS.MSDNQTR.v90.en/winui/winui/desktopwindowmanager/reference/functions/dwmquerythumbnailsourcesize.htm
 
;{----THUMBNAIL------------Structure
THUM.THUMBNAIL
THUM\dwFlags = 31
;----RECT------------Structure                                    
THUM\rcD\bottom = (POS\x-sz\cy)+(sz\cy);/2                              
THUM\rcD\left = (POS\y-sz\cx)/2;                                            
THUM\rcD\right = (POS\x-sz\cx)+(sz\cx);/2                              
THUM\rcD\top = (POS\y-sz\cy)/2;                                          
;------------RECT------------Structure                      
THUM\rcS\bottom = (sz\cy-20);                                            
THUM\rcS\left = 0
THUM\rcS\right = (sz\cx)
THUM\rcS\top = 0
;----END------------RECT
THUM\opacity = 255
THUM\fVisible = 1
THUM\fSourceClientAreaOnly = 0
;}----END------------THUMBNAIL
 
DwmUpdateThumbnailProperties(Thu,@THUM)
; ms-help://MS.MSDNQTR.v90.en/winui/winui/desktopwindowmanager/reference/functions/dwmupdatethumbnailproperties.htm
CloseLibrary(0)
 
Repeat : Until  WaitWindowEvent() = #PB_Event_CloseWindow
 
KillTimer_(WindowID(#Window_0),1)
 



Вернуться наверх
 Профиль  
 
Показать сообщения за:  Сортировать по:  
Начать новую тему Ответить на тему  [ 1 сообщение ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: Bing [Bot] и гости: 3


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
cron
Создано на основе phpBB® Forum Software © phpBB Group (блог о phpBB)
Сборка создана CMSart Studio
Русская поддержка phpBB