source: Include/windows/WindowHandle.sbp@ 178

Last change on this file since 178 was 178, checked in by イグトランス (egtra), 17 years ago

BOOL→Boolean

File size: 22.4 KB
RevLine 
[1]1#ifndef __WINDOWSHANDLE_SBP__
2#define __WINDOWSHANDLE_SBP__
3
[77]4#ifdef _WIN64
5Declare Function _System_GetWindowLongPtr Lib "user32" Alias "GetWindowLongPtrA" (hWnd As HWND, nIndex As Long) As LONG_PTR
6Declare Function _System_SetWindowLongPtr Lib "user32" Alias "SetWindowLongPtrA" (hWnd As HWND, nIndex As Long, l As LONG_PTR) As LONG_PTR
7#else
8Declare Function _System_GetWindowLongPtr Lib "user32" Alias "GetWindowLongA" (hWnd As HWND, nIndex As Long) As LONG_PTR
9Declare Function _System_SetWindowLongPtr Lib "user32" Alias "SetWindowLongA" (hWnd As HWND, nIndex As Long, l As LONG_PTR) As LONG_PTR
10#endif
11Declare Function _System_GetParent Lib "user32" Alias "GetParent" (hWnd As HWND) As HWND
12Declare Function _System_SetParent Lib "user32" Alias "SetParent" (hWnd As HWND) As HWND
13Declare Function _System_GetMenu Lib "user32" Alias "GetMenu" (hWnd As HWND) As HMENU
14Declare Function _System_SetMenu Lib "user32" Alias "SetMenu" (hWnd As HWND) As HMENU
15Declare Function _System_InvalidateRect Lib "user32" Alias "InvalidateRect" (hWnd As HWND, ByRef Rect As RECT, bErase As BOOL) As BOOL
16Declare Function _System_InvalidateRgn Lib "user32" Alias "InvalidateRgn" (hWnd As HWND, hRgn As HRGN, bErase As BOOL) As BOOL
17Declare Function _System_ValidateRect Lib "user32" Alias "ValidateRect" (hWnd As HWND, ByRef Rect As RECT) As BOOL
18Declare Function _System_ValidateRgn Lib "user32" Alias "ValidateRgn" (hWnd As HWND, hRgn As HRGN) As BOOL
19Declare Function _System_BeginPaint Lib "user32" Alias "BeginPaint" (hWnd As HWND, ByRef ps As PAINTSTRUCT) As HDC
20Declare Function _System_EndPaint Lib "user32" Alias "EndPaint" (hWnd As HWND, ByRef lpPaint As PAINTSTRUCT) As HDC
21Declare Function _System_ClientToScreen Lib "user32" Alias "ClientToScreen" (hWnd As HWND, ByRef lpPoint As POINTAPI) As BOOL
22Declare Function _System_ScreenToClient Lib "user32" Alias "ScreenToClient" (hWnd As HWND, ByRef lpPoint As POINTAPI) As BOOL
23Declare Function _System_CreateCaret Lib "user32" Alias "CreateCaret" (hWnd As HWND, hBitmap As HBITMAP, nWidth As Long, nHeight As Long) As BOOL
24Declare Function _System_HideCaret Lib "user32" Alias "HideCaret" (hWnd As HWND) As BOOL
25Declare Function _System_ShowCaret Lib "user32" Alias "ShowCaret" (hWnd As HWND) As BOOL
26Declare Function _System_DrawMenuBar Lib "user32" Alias "DrawMenuBar" (hwnd As HWND) As BOOL
27Declare Function _System_GetWindowRect Lib "user32" Alias "DrawMenuBar" (hWnd As HWND, ByRef Rect As RECT) As BOOL
28Declare Function _System_IsWindow Lib "user32" Alias "IsWindow" (hWnd As HWND) As BOOL
29Declare Function _System_Isiconic Lib "user32" Alias "Isiconic" (hWnd As HWND) As BOOL
30Declare Function _System_GetClientRect Lib "user32" Alias "GetClientRect" (hWnd As HWND, ByRef lpRect As RECT) As BOOL
31
[1]32Class WindowHandle
33 hwnd As HWND
34Public
35 Sub WindowHandle()
36 hwnd = 0
37 End Sub
38
39 Sub WindowHandle(hwndNew As HWND)
40 hwnd = hwndNew
41 End Sub
42
43 Sub WindowHandle(ByRef wnd As WindowHandle)
44 hwnd = wnd.hwnd
45 End Sub
[42]46
[1]47 Sub Operator =(hwndNew As HWND)
48 hwnd = hwndNew
49 End Sub
[42]50
[77]51 Const Function HWnd() As HWND
[1]52 Return hwnd
53 End Function
[42]54
[77]55 Const Function Operator() As HWND
[1]56 Return hwnd
57 End Function
58
[178]59 Function BringToTop() As Boolean
60 Return BringWindowToTop(hwnd) As Boolean
[77]61 End Function
62
[1]63 Function BeginPaint(ByRef ps As PAINTSTRUCT) As HDC
[77]64 Return _System_BeginPaint(hwnd, ps)
[1]65 End Function
66
[77]67 Const Function ChildFromPoint(x As Long, y As Long) As HWND
[1]68 Return ChildWindowFromPoint(hwnd, x, y)
69 End Function
70
[77]71 Const Function ChildFromPointEx(x As Long, y As Long, flags As DWord) As HWND
[1]72 Return ChildWindowFromPointEx(hwnd, x, y, flags)
73 End Function
74
[178]75 Const Function ClientToScreen(ByRef pt As POINTAPI) As Boolean
76 Return _System_ClientToScreen(hwnd, pt) As Boolean
[1]77 End Function
78
[178]79 Function Close() As Boolean
80 Return CloseWindow(hwnd) As Boolean
[1]81 End Function
82
[178]83 Function CreateCaret(hbmp As HBITMAP, width As Long, height As Long) As Boolean
84 Return _System_CreateCaret(hwnd, hbmp, width, hegiht) As Boolean
[1]85 End Function
86
[178]87 Function Destroy() As Boolean
88 Return DestroyWindow(hwnd) As Boolean
[1]89 End Function
90
[178]91 Function DrawMenuBar() As Boolean
92 Return _System_DrawMenuBar(hwnd) As Boolean
[1]93 End Function
[42]94
[178]95 Function EnableScrollBar(SBFlags As DWord, arrows As DWord) As Boolean
96 Return EnableScrollBar(hwnd, SBFlags, arrows) As Boolean
[1]97 End Function
98
[178]99 Function Enable(enable As Boolean) As Boolean
100 Return EnableWindow(hwnd, enable) As Boolean
[1]101 End Function
102
[178]103 Function EndPaint(ByRef ps As PAINTSTRUCT) As Boolean
104 Return _System_EndPaint(hwnd, ps) As Boolean
[1]105 End Function
106
[178]107 Const Function EnumChilds(enumFunc As WNDENUMPROC, lp As LPARAM) As Boolean
108 Return EnumChildWindows(hwnd, enumFunc, lp) As Boolean
[1]109 End Function
110
[178]111 Function Flash(invert As Boolean) As Boolean
112 Return FlashWindow(hwnd, invert) As Boolean
[1]113 End Function
114
[77]115 Const Function GetClassLongPtr(index As Long) As LONG_PTR
[1]116 Return GetClassLongPtr(hwnd, index)
117 End Function
118
[77]119 Const Function GetClassName(className As PSTR, maxCount As Long) As Long
[1]120 Return GetClassName(className, maxCount)
121 End Function
122
[178]123 Const Function GetClientRect(ByRef rc As RECT) As Boolean
124 Return _System_GetClientRect(hwnd, rc) As Boolean
[1]125 End Function
126
[77]127 Const Function GetContextHelpId() As DWord
128 Return GetWindowContextHelpId(hwnd)
129 End Function
130
[1]131 Function GetDC() As HDC
132 Return GetDC(hwnd)
133 End Function
134
135 Function GetDCEx(hrgnClip As HRGN, flags As DWord) As HDC
136 Return GetDCEx(hwnd, hrgnClip, flags)
137 End Function
138
[77]139 Const Function GetDlgCtrlID() As Long
[1]140 Return GetDlgCtrlID(hwnd)
141 End Function
142
[77]143 Const Function GetDlgItem(idDlgItem As Long) As WindowHandle
[1]144 Return GetDlgItem(hwnd, idDlgItem)
145 End Function
146
[77]147 Const Function GetDlgItemText(idDlgItem As Long, ps As PSTR, maxCount As Long) As Long
[1]148 Return GetDlgItemText(hwnd, idDlgItem, ps, maxCount)
149 End Function
150
[77]151 Const Function GetMenu() As HMENU
152 Return _System_GetMenu(hwnd)
[1]153 End Function
154
[77]155 Const Function GetParent() As WindowHandle
156 Dim w As WindowHandle(_System_GetParent(hwnd))
157 Return w
[1]158 End Function
159
[77]160 Const Function GetProp(psz As PCSTR) As HANDLE
[1]161 Return GetProp(hwnd, psz)
162 End Function
163
[77]164 Const Function GetProp(atom As ATOM) As HANDLE
[1]165 Return GetProp(hwnd, atom As ULONG_PTR As PCSTR)
166 End Function
167
[178]168 Const Function GetScrollInfo(fnBar As Long, ByRef si As SCROLLINFO) As Boolean
169 Return GetScrollInfo(hwnd, fnBar, si) As Boolean
[1]170 End Function
171
[178]172 Const Function GetSystemMenu(revert As Boolean) As HMENU
[1]173 Return GetSystemMenu(hwnd, revert)
174 End Function
175
[178]176 Const Function GetUpdateRect(ByRef rc As RECT, erase As Boolean) As Boolean
177 Return GetUpdateRact(hwnd, rc, erase) As Boolean
[1]178 End Function
179
[178]180 Const Function GetUpdateRgn(hrgn As HRGN, erase As Boolean) As Boolean
181 Return GetUpdateRgn(hwnd, hrgn, erase) As Boolean
[1]182 End Function
183
[77]184 Const Function GetWindow(cmd As DWord) As WindowHandle
[1]185 Return GetWindow(hwnd, cmd)
186 End Function
187
188 Function GetWindowDC() As HDC
189 Return GetWindowDC(hwnd)
190 End Function
191
[77]192 Const Function GetWindowLongPtr(index As Long) As LONG_PTR
193 Return _System_GetWindowLongPtr(hwnd, index)
[1]194 End Function
195
[178]196 Const Function GetWindowPlasement(ByRef wndpl As WINDOWPLACEMENT) As Boolean
197 Return GetWindowPlasement(hwnd, wndpl) As Boolean
[1]198 End Function
199
[178]200 Const Function GetWindowRect(ByRef rc As RECT) As Boolean
201 Return _System_GetWindowRect(rc) As Boolean
[1]202 End Function
203
[178]204 Const Function GetText(ps As PSTR, maxCount As Long) As Boolean
205 Return GetWindowText(ps, maxCount) As Boolean
[1]206 End Function
207
[77]208 Const Function GetTextLength() As Long
[1]209 Return GetWindowTextLength(hwnd)
210 End Function
211
[77]212 Const Function GetWindowThreadId() As DWord
[1]213 Return GetWindowProcessThreadId(hwnd, 0)
214 End Function
215
[77]216 Const Function GetWindowProcessThreadId(ByRef processId As DWord) As DWord
[1]217 Return GetWindowProcessThreadId(hwnd, processId)
218 End Function
219
[178]220 Function HideCaret() As Boolean
221 Return _System_HideCaret(hwnd) As Boolean
[1]222 End Function
223
[178]224 Function InvalidateRect(ByRef rc As RECT, erace As Boolean) As Boolean
225 Return _System_InvalidateRect(hwnd, rc, erace) As Boolean
[1]226 End Function
227
[178]228 Function InvalidateRect(ByRef rc As RECT) As Boolean
229 Return _System_InvalidateRect(hwnd, rc, TRUE) As Boolean
[1]230 End Function
231
[178]232 Function InvalidateRgn(hrgn As HRGN, erace As Boolean) As Boolean
233 Return _System_InvalidateRgn(hwnd, hrgn, erace) As Boolean
[1]234 End Function
235
[178]236 Function InvalidateRgn(hrgn As HRGN) As Boolean
237 Return _System_InvalidateRgn(hwnd, hrgn, TRUE) As Boolean
[1]238 End Function
239
[178]240 Function Invalidate(erace As Boolean) As Boolean
241 Return _System_InvalidateRect(hwnd, ByVal 0, erace) As Boolean
[1]242 End Function
[42]243
[178]244 Function Invalidate() As Boolean
245 Return _System_InvalidateRect(hwnd, ByVal 0, TRUE) As Boolean
[1]246 End Function
247
[178]248 Const Function IsChild(hwnd As HWND) As Boolean
249 Return IsChild(This.hwnd, hwnd) As Boolean
[1]250 End Function
251
[178]252 Const Function IsDialogMessage(ByRef msg As MSG) As Boolean
253 Return IsDialogMessage(hwnd, msg) As Boolean
[1]254 End Function
255
[178]256 Const Function IsIconic() As Boolean
257 Return _System_IsIconic(hwnd) As Boolean
[1]258 End Function
259
[178]260 Const Function IsWindow() As Boolean
261 Return _System_IsWindow(hwnd) As Boolean
[1]262 End Function
263
[178]264 Const Function IsEnabled() As Boolean
265 Return IsWindowEnabled(hwnd) As Boolean
[1]266 End Function
267
[178]268 Const Function IsUnicode() As Boolean
269 Return IsWindowUnicode(hwnd) As Boolean
[1]270 End Function
271
[178]272 Const Function IsVisible() As Boolean
273 Return IsWindowVisible(hwnd) As Boolean
[1]274 End Function
275
[178]276 Const Function IsZoomed() As Boolean
277 Return IsZoomed(hwnd) As Boolean
[1]278 End Function
279
[178]280 Function KillTimer(idEvent As ULONG_PTR) As Boolean
281 Return KillTimer(idEvent) As Boolean
[1]282 End Function
283
[178]284 Function LockUpdate() As Boolean
285 Return LockWindowUpdate(hwnd) As Boolean
[1]286 End Function
287
288 Function MapPoints(hwndTo As HWND, pPoints As *POINTAPI, cPoints As DWord) As Long
289 Return MapWindowPoints(hwnd, hwndTo, pPoints, cPoints)
290 End Function
291
292 Function MapPoints(hwndTo As HWND, ByRef rc As RECT) As Long
293 Return MapWindowPoints(hwnd, hwndTo, VarPtr(rc) As *POINTAPI, 2)
294 End Function
295
[77]296 Const Function MessageBox(text As PCSTR, caption As PCSTR, uType As DWord) As Long
[1]297 Return MessageBox(hwnd, text, caption, uType)
298 End Function
299
[77]300 Const Function MessageBox(text As PCSTR, caption As PCSTR) As Long
[1]301 Return MessageBox(hwnd, text, caption, MB_OK)
302 End Function
303
[77]304 Const Function MessageBox(text As PCSTR) As Long
[1]305 Return MessageBox(hwnd, text, 0, MB_OK)
306 End Function
307
[178]308 Function Move(x As Long, y As Long, width As Long, height As Long, repaint As Boolean) As Boolean
309 Return MoveWindow(hwnd, x, y, width, height, repaint) As Boolean
[1]310 End Function
311
[178]312 Function Move(x As Long, y As Long, width As Long, height As Long) As Boolean
313 Return MoveWindow(hwnd, x, y, width, height, TRUE) As Boolean
[1]314 End Function
315
[178]316 Function Move(ByRef rc As RECT, repeaint As Boolean) As Boolean
[1]317 With rc
[178]318 Return MoveWindow(hwnd, .left, .top, .right - .left, .bottom - .top, repaint) As Boolean
[1]319 End With
320 End Function
321
[178]322 Function Move(ByRef rc As RECT) As Boolean
[1]323 With rc
[178]324 Return MoveWindow(hwnd, .left, .top, .right - .left, .bottom - .top, TRUE) As Boolean
[1]325 End With
326 End Function
327
[178]328 Function OpenClipboard() As Boolean
329 Return OpenClipboard(hwnd) As Boolean
[1]330 End Function
331
[178]332 Function OpenIcon() As Boolean
333 Return OpenIcon(hwnd) As Boolean
[1]334 End Function
335
[178]336 Function PostMessage(msg As DWord, wp As WPARAM, lp As LPARAM) As Boolean
337 Return PostMessage(hwnd, msg, wp, lp) As Boolean
[1]338 End Function
339
[178]340 Function PostMessage(msg As DWord) As Boolean
341 Return PostMessage(hwnd, msg, 0, 0) As Boolean
[1]342 End Function
343
[178]344 Function RedrawWindow(ByRef rcUpdate As RECT, hrgnUpdate As HRGN, flags As DWord) As Boolean
345 Return RedrawWindow(hwnd, rcUpdatre, hrgnUpdate, flags) As Boolean
[1]346 End Function
347
[178]348 Function ReleaseDC(hdc As HDC) As Boolean
349 Return ReleaseDC(hwnd, hdc) As Boolean
[1]350 End Function
351
352 Function RemoveProp(psz As PCSTR) As HANDLE
353 Return RemoveProp(hwnd, psz)
354 End Function
355
356 Function RemoveProp(atom As ATOM) As HANDLE
357 Return RemoveProp(hwnd, atom As ULONG_PTR As PCSTR)
358 End Function
359
[178]360 Const Function ScreenToClient(ByRef pt As POINTAPI) As Boolean
361 Return _System_ScreenToClient(hwnd, pt) As Boolean
[1]362 End Function
363
[178]364 Function Scroll(dx As Long, dy As Long, ByRef rcScroll As RECT, ByRef rcClip As RECT, hrgnUpdate As HRGN, ByRef rcUpdate As RECT, flags As DWord) As Boolean
365 Return ScrollWindowEx(hwnd, dx, dy, rcScroll, rcClip, hrgnUpdate, rcUpdate, flags) As Boolean
[1]366 End Function
367
368 Function SendDlgItemMessage(idDlgItem As Long, msg As DWord, wp As WPARAM, lp As LPARAM) As LRESULT
369 Return SendDlgItemMessage(hwnd, idDlgItem, wp, lp)
370 End Function
371
372 Function SendDlgItemMessage(idDlgItem As Long, msg As DWord) As LRESULT
373 Return SendDlgItemMessage(hwnd, idDlgItem, 0, 0)
374 End Function
375
376 Function SendMessage(msg As DWord, wp As WPARAM, lp As LPARAM) As LRESULT
377 Return SendMessage(hwnd, msg, wp, lp)
378 End Function
379
380 Function SendMessage(msg As DWord) As LRESULT
381 Return SendMessage(hwnd, msg, 0, 0)
382 End Function
383
384 Function SetActiveWindow() As HWND
385 Return SetActiveWindow(hwnd)
386 End Function
387
[178]388 Function SetDlgItemText(idDlgItem As Long, psz As PCSTR) As Boolean
389 Return SetDlgItemText(hwnd, idDlgItem, psz) As Boolean
[1]390 End Function
[42]391
[1]392 Function SetCapture() As HWND
393 Return SetCapture(hwnd) As HWND
394 End Function
395
396 Function SetClassLongPtr(index As Long, newLong As LONG_PTR) As LONG_PTR
397 Return SetClassLongPtr(hwnd, index, newLong)
398 End Function
399
400 Function SetFocus() As HWND
401 Return SetFocus(hwnd)
402 End Function
403
[178]404 Function SetForeground() As Boolean
405 Return SetForegroundWindow(hwnd) As Boolean
[1]406 End Function
407
[178]408 Function SetMenu(hmenu As HMENU) As Boolean
409 Return _System_SetMenu(hwnd, hmenu) As Boolean
[1]410 End Function
411
412 Function SetParent(hwndNewParent As HWND) As HWND
[77]413 Return _System_SetParent(hwnd, hwndNewParent)
[1]414 End Function
415
[178]416 Function SetProp(psz As PCSTR, hData As HANDLE) As Boolean
417 Return SetProp(hwnd, psz, hData) As Boolean
[1]418 End Function
419
[178]420 Function SetProp(atom As ATOM, hData As HANDLE) As Boolean
421 Return SetProp(atom As ULONG_PTR As PCSTR, hData) As Boolean
[1]422 End Function
423
[178]424 Function SetScrollInfo(fnBar As Long, ByRef si As SCROLLINFO, redraw As Boolean) As Boolean
425 Return SetScrollInfo(hwnd, fnBar, si, redraw) As Boolean
[1]426 End Function
427
[178]428 Function SetScrollInfo(fnBar As Long, ByRef si As SCROLLINFO) As Boolean
429 Return SetScrollInfo(hwnd, fnBar, si, TRUE) As Boolean
[1]430 End Function
431
432 Function SetTimer(idEvent As ULONG_PTR, elapse As DWord, timerFunc As TIMERPROC) As ULONG_PTR
433 Return SetTmer(hwnd, idEvent, elapse, timerFunc)
434 End Function
435
436 Function SetTimer(idEvent As ULONG_PTR, elapse As DWord) As ULONG_PTR
437 Return SetTmer(hwnd, idEvent, elapse, 0)
438 End Function
439
[178]440 Function SetContextHelpId(contextHelpId As DWord) As Boolean
441 Return SetContextHelpId(hwnd, contextHelpId) As Boolean
[1]442 End Function
443
444 Function SetWindowLongPtr(index As Long, newLong As LONG_PTR) As LONG_PTR
[77]445 Return _System_SetWindowLongPtr(hwnd, index, newLong)
[1]446 End Function
447
[178]448 Function SetWindowPlacement(ByRef wndpl As WINDOWPLACEMENT) As Boolean
449 Return SetWindowPlacement(hwnd, wndpl) As Boolean
[1]450 End Function
451
[178]452 Function SetPos(hwndInsertAfter As HWND, x As Long, y As Long, cx As Long, cy As Long, flags As DWord) As Boolean
453 Return SetWindowPos(hwnd, hwndInsertAfter, x, y, cx, cy, flags) As Boolean
[1]454 End Function
455
[178]456 Function SetPos(hwndInsertAfter As HWND, ByRef rc As RECT, flags As DWord) As Boolean
[1]457 With rc
[178]458 Return SetWindowPos(hwnd, hwndInsertAfter, .left, .top, .right - .left, .bottom - .top, flags) As Boolean
[1]459 End With
460 End Function
461
[178]462 Function SetRgn(hrgn As HRGN, redraw As Boolean) As Boolean
463 Return SetWindowRgn(hwnd, hrgn, redraw) As Boolean
[1]464 End Function
465
[178]466 Function SetRgn(hrgn As HRGN) As Boolean
467 Return SetWindowRgn(hwnd, hrgn, TRUE) As Boolean
[1]468 End Function
469
[178]470 Function SetText(psz As PCSTR) As Boolean
471 Return SetWindowText(hwnd, psz) As Boolean
[1]472 End Function
473
[178]474 Function ShowCaret() As Boolean
475 Return _System_ShowCaret(hwnd) As Boolean
[77]476 End Function
477
[178]478 Function ShowScrollBar(bar As DWord, show As Boolean) As Boolean
479 Return ShowScrollBar(hwnd, bar, show) As Boolean
[1]480 End Function
481
[178]482 Function ShowScrollBar(bar As DWord) As Boolean
483 Return ShowScrollBar(hwnd, bar, TRUE) As Boolean
[1]484 End Function
485
[178]486 Function Show(cmdShow As DWord) As Boolean
487 Return ShowWindow(hwnd, cmdShow) As Boolean
[1]488 End Function
489
[178]490 Function ShowAsync(cmdShow As DWord) As Boolean
491 Return ShowWindowAsync(hwnd, cmdShow) As Boolean
[1]492 End Function
493
[178]494 Function Update() As Boolean
495 Return UpdateWindow(hwnd) As Boolean
[1]496 End Function
497
[178]498 Function ValidateRect(ByRef rc As RECT) As Boolean
499 Return _System_ValidateRect(hwnd, rc) As Boolean
[1]500 End Function
501
[178]502 Function ValidateRgn(hrgn As HRGN) As Boolean
503 Return _System_ValidateRgn(hwnd, hrgn) As Boolean
[1]504 End Function
505
[178]506 Function Validate() As Boolean
507 Return _System_ValidateRect(hwnd, ByVal 0) As Boolean
[1]508 End Function
509
510 ' Get/SetWindowLongPtr Wrappers
511
[77]512 Const Function GetExStyle() As DWord
513 Return _System_GetWindowLongPtr(hwnd, GWL_EXSTYLE) As DWord
[1]514 End Function
515
[77]516 Const Function GetStyle() As DWord
517 Return _System_GetWindowLongPtr(hwnd, GWL_STYLE) As DWord
[1]518 End Function
519
[77]520 Const Function GetWndProc() As WNDPROC
521 Return _System_GetWindowLongPtr(hwnd, GWLP_HINSTANCE) As WNDPROC
[1]522 End Function
523
[77]524 Const Function GetInstance() As HINSTANCE
525 Return _System_GetWindowLongPtr(hwnd, GWLP_HINSTANCE) As HINSTANCE
[1]526 End Function
527
[77]528 Const Function GetUserData() As LONG_PTR
529 Return _System_GetWindowLongPtr(hwnd, GWLP_USERDATA)
[1]530 End Function
531
532 Function SetExStyle(style As DWord) As DWord
[77]533 Return _System_SetWindowLongPtr(hwnd, GWL_EXSTYLE, style) As DWord
[1]534 End Function
535
536 Function SetStyle(style As DWord) As DWord
[77]537 Return _System_SetWindowLongPtr(hwnd, GWL_STYLE, style) As DWord
[1]538 End Function
539
540 Function SetWndProc(wndProc As WNDPROC) As WNDPROC
[77]541 Return _System_SetWindowLongPtR(hwnd, GWLP_WNDPROC, wndProc As WNDPROC) As WNDPROC
[1]542 End Function
543
544 Function SetUserData(value As LONG_PTR) As LONG_PTR
[77]545 Return _System_SetWindowLongPtr(value As LONG_PTR)
[1]546 End Function
547
548 ' Propaties
549
[77]550 Const Function ClientRect() As RECT
[1]551 Dim rc As RECT
[77]552 _System_GetClientRect(hwnd, rc)
[1]553 Return rc
554 End Function
555
556 Sub ClientRect(ByRef rc As RECT)
557 Dim hasMenu As BOOL
[178]558 If IsChild() = False And IsMenu() <> False Then
[1]559 hasMenu = TRUE
560 Else
561 hasMenu = FALSE
[178]562 End If
[1]563 AdjustWindowRectEx(rc, GetStyle(), hasMenu, GetExStyle())
564 MoveWindow(rc) ' WindowRect = rc
565 End Sub
566
[77]567 Const Function WindowRect() As RECT
[1]568 Dim rc As RECT
[77]569 _System_GetWindowRect(hwnd, rc)
[1]570 Return rc
571 End Function
572
573 Sub WindowRect(ByRef rc As RECT)
574 MoveWindow(rc)
575 End Sub
576
[77]577 Const Function ContextHelpID() As DWord
[1]578 Return GetContextHelpId(hwnd)
579 End Function
580
581 Sub ContextHelpID(newID As DWord)
[77]582 _System_SetContextHelpId(hwnd, newId)
[1]583 End Sub
584
[77]585 Const Function DlgCtrlID() As Long
[1]586 Return GetDlgCtrlID(hwnd)
587 End Function
588
589 Sub DlgCtrlId(newId As Long)
[77]590 _System_SetWindowLongPtr(hwnd, GWLP_ID, newId)
[1]591 End Sub
592
593 Function DlgItem(idDlgItem As Long) As WindowHandle
[77]594 Dim w As WindowHandle(GetDlgItem(hwnd, idDlgItem))
595 Return w
[1]596 End Function
597
[77]598 Const Function ExStyle() As DWord
599 Return _System_GetWindowLongPtr(hwnd, GWL_EXSTYLE) As DWord
[1]600 End Function
601
602 Sub ExStyle(newExStyle As DWord)
[77]603 _System_SetWindowLongPtr(hwnd, GWLP_EXSTYLE, newExStyle)
[1]604 End Sub
605
[77]606 Const Function Style() As DWord
607 Return _System_GetWindowLongPtr(hwnd, GWL_STYLE) As DWord
[1]608 End Function
609
610 Sub Style(newStyle As DWord) DWord
[77]611 _System_SetWindowLongPtr(hwnd, GWLP_STYLE, newStyle)
[1]612 End Sub
613
[178]614 Const Function Enabled() As Boolean
615 Return IsWindowEnabled(hwnd) As Boolean
[1]616 End Function
617
[178]618 Sub Enabled(enable As Boolean)
[1]619 EnableWindow(hwnd, enable)
620 End Sub
621
[77]622 Const Function Font() As HFONT
[1]623 Return SendMessage(hwnd, WM_GETFONT, 0, 0) As HFONT
624 End Function
625
626 Sub Font(hfntNew As HFONT)
627 SendMessage(hwnd, WM_SETFONT, hfntNew As WPARAM, TRUE)
628 End Sub
629
[178]630 Const Function Maximized() As Boolean
631 Return IsIconic(hwnd) As Boolean
[1]632 End Function
633
[178]634 Sub Maximized(maximized As Boolean)
635 If maximized <> False Then
[1]636 ShowWindow(hwnd, SW_SHOWMAXIMIZED)
637 Else
638 ShowWindow(hwnd, SW_RESTORE)
639 End If
640 End Sub
641
[178]642 Const Function Minimized() As Boolean
643 Return IsIconic(hwnd) As Boolean
[1]644 End Function
645
[178]646 Sub Minimized(minimized As Boolean)
647 If minimized <> False Then
[1]648 CloseWindow(hwnd)
649 Else
650 OpenIcon(hwnd)
651 End If
652 End Sub
653
[77]654 Const Function Instance() As HINSTANCE
655 Return _System_GetWindowLongPtr(hwnd, GWLP_HINSTANCE) As HINSTANCE
[1]656 End Function
657
658 ' IsWindow, IsUnicodeはメソッドと同じ。
659
[77]660 Const Function Parent() As WindowHandle
661 Return _System_GetParent(hwnd)
[1]662 End Function
663
664 Sub Parent(hwndNewParent As HWND)
[77]665 _System_SetParent(hwnd, hwndNewParent)
[1]666 End Sub
667
[77]668 Const Function ProcessID() As DWord
[1]669 GetWindowProcessThreadId(ProcessID)
670 End Function
671
[77]672 Const Function ThreadID() As DWord
[1]673 Return GetWindowProcessThreadId(ByVal 0)
674 End Function
675
[77]676 Const Function Menu() As HMENU
677 Return _System_GetMenu(hwnd)
[1]678 End Function
679
680 Sub Menu(hmenuNew As HMENU)
[77]681 _System_SetMenu(hwnd, hmenuNew)
[1]682 End Sub
683
[77]684 Const Function Text() As String
[1]685 With Text
686 .ReSize(GetWindowTextLength(hwnd))
687 .ReSize(GetWindowText(hwnd, .Chars, .Length + 1))
688 End With
689 End Function
690
691 Sub Text(newText As PCSTR)
692 SetWindowText(hwnd, newText)
693 End Sub
694
[77]695 Const Function TextLength() As Long
[1]696 Return GetWindowTextLength(hwnd)
697 End Function
698
[77]699 Const Function UserData() As LONG_PTR
700 Return _System_GetWindowLongPtr(hwnd, GWLP_USERDATA)
[1]701 End Function
702
703 Sub UserData(newValue As LONG_PTR)
[77]704 _System_SetWindowLongPtr(hwnd, GWLP_USERDATA, newValue)
[1]705 End Sub
706
[178]707 Const Function Visible() As Boolean
708 Return IsVisible(hwnd) As Boolean
[1]709 End Function
710
[178]711 Sub Visible(visible As Boolean)
712 If visible <> False Then
[1]713 ShowWindow(hwnd, SW_SHOW)
714 Else
715 ShowWindow(hwnd, SW_HIDE)
716 EndIf
717 End Sub
718
[77]719 Const Function WindowPlacement() As WINDOWPLACEMENT
[1]720 WindowPlacement.length = Len(WindowPlacement)
721 GetWindowPlacement(hwnd, WindowPlacement)
722 End Function
723
724 Sub WindowPlacement(ByRef wndpl As WINDOWPLACEMENT)
725 SetWindowPlacement(wndpl)
726 End Sub
727
[77]728 Const Function WndProc() As WNDPROC
729 Return _System_GetWindowLongPtr(hwnd, GWLP_HINSTANCE) As WNDPROC
[1]730 End Function
731
732 Sub WndProc(newWndProc As WNDPROC)
[77]733 _System_SetWindowLongPtr(hwnd, GWLP_WNDPROC, newWndProc As LONG_PTR)
[1]734 End Sub
735
736Protected
737 Sub SetHWnd(hwndNew As HWND)
738 hwnd = hwndNew
739 End Sub
740End Class
741
742#endif '__WINDOWSHANDLE_SBP__
Note: See TracBrowser for help on using the repository browser.