Hiding the Blitz Window's Control Bar?

Blitz3D Forums/Blitz3D Userlibs/Hiding the Blitz Window's Control Bar?

Anyone know how to hide the Blitz Window's Control Bar? (Blitz3D)

For those of you that don't know what a control bar is, its the little bar
that spans the window that has the app's title and the minimize,maximize,and
exit buttons (If they are enabled).

Of course, I'm looking for a userlib to do it, because that's the only way to
do it in Blitz...

So if somebody knows a DLL that does it or something, just holler.

I've been looking all day the past two days for some way to do it... -_-

Never heard the title bar being called a control bar before, but still...

;---------------------------------------------------------------------------------
; User32.decls
;==============
;
;.lib "user32.dll"
;
;FindWindow%( class$,Text$ ):"FindWindowA"
;GetWindowLong%(hwnd%, nIndex%) : "GetWindowLongA"
;GetSystemMetrics%(nIndex%) : "GetSystemMetrics"
;MoveWindow%(hwnd%, x%, y%, nWidth%, nHeight%, bRepaint%) : "MoveWindow"
;SetWindowLong%(hwnd%, nIndex%, dwNewLong%) : "SetWindowLongA"
;ShowWindow%(hwnd%, nCmdShow%) : "ShowWindow"
;
;---------------------------------------------------------------------------------

Const title$ = "blitzapp"

Const SM_CXSCREEN        = 0
Const SM_CYSCREEN        = 1
Const SM_CXVSCROLL        = 2
Const SM_CYHSCROLL        = 3
Const SM_CYCAPTION        = 4
Const SM_CXBORDER        = 5
Const SM_CYBORDER        = 6
Const SM_CXDLGFRAME        = 7
Const SM_CYDLGFRAME        = 8
Const SM_CYVTHUMB        = 9
Const SM_CXHTHUMB        = 10
Const SM_CXICON            = 11
Const SM_CYICON            = 12
Const SM_CXCURSOR        = 13
Const SM_CYCURSOR        = 14
Const SM_CYMENU            = 15
Const SM_CXFULLSCREEN    = 16
Const SM_CYFULLSCREEN    = 17
Const SM_CYKANJIWINDOW    = 18
Const SM_MOUSEPRESENT    = 19
Const SM_CYVSCROLL        = 20
Const SM_CXHSCROLL        = 21
Const SM_DEBUG            = 22
Const SM_SWAPBUTTON        = 23
Const SM_RESERVED1        = 24
Const SM_RESERVED2        = 25
Const SM_RESERVED3        = 26
Const SM_RESERVED4        = 27
Const SM_CXMIN            = 28
Const SM_CYMIN            = 29
Const SM_CXSIZE            = 30
Const SM_CYSIZE            = 31
Const SM_CXFRAME        = 32
Const SM_CYFRAME        = 33
Const SM_CXMINTRACK        = 34
Const SM_CYMINTRACK        = 35
Const SM_CXDOUBLECLK    = 36
Const SM_CYDOUBLECLK    = 37
Const SM_CXICONSPACING    = 38
Const SM_CYICONSPACING    = 39
Const SM_MENUDROPALIGNMENT=40
Const SM_PENWINDOWS        = 41
Const SM_DBCSENABLED    = 42
Const SM_CMOUSEBUTTONS    = 43
Const SM_CMETRICS        = 44
Const SM_CXSIZEFRAME    = SM_CXFRAME
Const SM_CYSIZEFRAME    = SM_CYFRAME
Const SM_CXFIXEDFRAME    = SM_CXDLGFRAME
Const SM_CYFIXEDFRAME    = SM_CYDLGFRAME

Const GWL_STYLE        = -16
Const GWL_EXSTYLE    = -20

Const WS_OVERLAPPED     = $0
Const WS_POPUP            = $80000000
Const WS_CHILD            = $40000000
Const WS_MINIMIZE        = $20000000
Const WS_VISIBLE        = $10000000
Const WS_DISABLED        = $8000000
Const WS_CLIPSIBLINGS    = $4000000
Const WS_CLIPCHILDREN    = $2000000
Const WS_MAXIMIZE        = $1000000
Const WS_CAPTION        = $C00000
Const WS_BORDER            = $800000
Const WS_DLGFRAME        = $400000
Const WS_VSCROLL        = $200000
Const WS_HSCROLL        = $100000
Const WS_SYSMENU        = $80000
Const WS_THICKFRAME        = $40000
Const WS_GROUP            = $20000
Const WS_TABSTOP        = $10000
Const WS_MINIMIZEBOX    = $20000
Const WS_MAXIMIZEBOX    = $10000

Const WS_TILED                 = WS_OVERLAPPED
Const WS_ICONIC             = WS_MINIMIZE
Const WS_SIZEBOX             = WS_THICKFRAME
Const WS_OVERLAPPEDWINDOW     = (WS_OVERLAPPED Or WS_CAPTION Or WS_SYSMENU Or WS_THICKFRAME Or WS_MINIMIZEBOX Or WS_MAXIMIZEBOX)
Const WS_TILEDWINDOW         = WS_OVERLAPPEDWINDOW
Const WS_POPUPWINDOW         = (WS_POPUP Or WS_BORDER Or WS_SYSMENU)
Const WS_CHILDWINDOW         = WS_CHILD

Const WS_EX_DLGMODALFRAME     = $1
Const WS_EX_NOPARENTNOTIFY    = $4
Const WS_EX_TOPMOST            = $8
Const WS_EX_ACCEPTFILES        = $10
Const WS_EX_TRANSPARENT        = $20

Const SW_HIDE            = 0
Const SW_SHOWNORMAL        = 1
Const SW_NORMAL            = 1
Const SW_SHOWMINIMIZED    = 2
Const SW_SHOWMAXIMIZED    = 3
Const SW_MAXIMIZE        = 3
Const SW_SHOWNOACTIVATE    = 4
Const SW_SHOW            = 5
Const SW_MINIMIZE        = 6
Const SW_SHOWMINNOACTIVE= 7
Const SW_SHOWNA            = 8
Const SW_RESTORE        = 9
Const SW_SHOWDEFAULT    = 10
Const SW_MAX            = 10

Const SWP_NOSIZE        = $1
Const SWP_NOMOVE        = $2
Const SWP_NOZORDER        = $4
Const SWP_NOREDRAW        = $8
Const SWP_NOACTIVATE    = $10
Const SWP_FRAMECHANGED    = $20
Const SWP_SHOWWINDOW    = $40
Const SWP_HIDEWINDOW    = $80
Const SWP_NOCOPYBITS    = $100
Const SWP_NOOWNERZORDER    = $200
Const SWP_DRAWFRAME        = SWP_FRAMECHANGED
Const SWP_NOREPOSITION    = SWP_NOOWNERZORDER

window_w = 640 ;GetSystemMetrics(SM_CXSCREEN)
window_h = 480 ;GetSystemMetrics(SM_CYSCREEN)

Graphics3D window_w, window_h, 0, 2

AppTitle title$

; Find this window
blitz_hnd = SystemProperty("AppHWND")
;blitz_hnd = FindWindow("Blitz Runtime Class", title$) ; Use this for pre v1.88 instead


; Set the windows style flags
SetWindowLong(blitz_hnd, GWL_STYLE, WS_VISIBLE)

; Centre window on desktop
MoveWindow(blitz_hnd, (GetSystemMetrics(SM_CXSCREEN) - window_w) / 2, (GetSystemMetrics(SM_CYSCREEN) - window_h) / 2, window_w, window_h, 1)

; --------------------------------------------------- test code ---------------------------------------------

cam = CreateCamera()
PositionEntity cam, 0, 0, -5
CameraClsColor cam, 0, 0, 100

cube = CreateCube()
EntityColor cube, 200, 200, 0

Repeat
    TurnEntity cube, 1, 1.5, 2
    
    RenderWorld
    
    Rect 0, 0, window_w, window_h, 0
    
    Flip
Until GetKey()

End


...Oops...

Thanks a lot! You rule! :)

Uh oh... Problem...
Won't work with Blitzsys, which I'm using in my app.... :/

Ruh-roh....

Fixed it! :)