Jump to content

Adding a close button?


 Share

Recommended Posts

Hey everyone.

I'm trying to make a child GUI which only have a title and a close button. The title can easily acquired by adding $WS_CAPTION to the style but what about a close button?

$WS_SYSMENU isn't the wanted effect I want as it also adds a window menu and icon to the GUI but I only want the close button. I couldn't find anything in the help file. Anyone got the style I need to apply, to my GUI on the top of their mind?

Thanks.

Link to comment
Share on other sites

#include <GUIConstants.au3>

#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125, BitOR($WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS))
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd

Link to comment
Share on other sites

Variable used without being declared.:
$Form1 = GUICreate("Form1", 633, 447, 193, 125, BitOR($WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS))
$Form1 = GUICreate("Form1", 633, 447, 193, 125, BitOR(^ ERROR

*Edit: And not to mention that even if it's working, it's explicitly NOT what the OP asked for. Maybe he was misread, so I'll bold the important parts.

$WS_SYSMENU isn't the wanted effect I want as it also adds a window menu and icon to the GUI but I only want the close button.

If I had to guess, I'd say he wants a window like MsgBox(0, '', '') gives. Although it should be noted that it still has a window menu, it's just not accessible via a title icon (must press Alt+Space). Edited by Saunders
Link to comment
Share on other sites

Here is a image of what I mean:

As you see within the red rectangle this title bar doesn't have the icon.

Saunders @ About they can access the window menu doesn't matter. It just the icon I want gone. But thanks for enlighten me with the hotkey. Didn't even know you could do that :).

Sorry for my English :).

Link to comment
Share on other sites

#include <GUIConstants.au3>
#include <WindowsConstants.au3>
#Region ### START Koda GUI section ### Form=
$Form1 = GUICreate("Form1", 633, 447, 193, 125, BitOR($WS_SYSMENU,$WS_CAPTION,$WS_POPUP,$WS_POPUPWINDOW,$WS_BORDER,$WS_CLIPSIBLINGS))
GUISetState(@SW_SHOW)
#EndRegion ### END Koda GUI section ###

While 1
    $nMsg = GUIGetMsg()
    Switch $nMsg
        Case $GUI_EVENT_CLOSE
            Exit

    EndSwitch
WEnd

I'm still using version 3.2.10.0 lol. Try it now (still untested with the latest release, I'm downloading it, but this should be fixed now.\

EDIT: @Saunders- He asked for a title and a close button... He provided no code to show what he had done, so I gave him something to work with, to see if he could figure it out himself.

Edited by Bert
Link to comment
Share on other sites

He asked for a title and a close button... He provided no code to show what he had done, so I gave him something to work with, to see if he could figure it out himself.

Well I would love to figure it out myself but I have already tried various ways to get my wanted effect.

Heck, I even tried to use Au3Info to get the style and then apply it. Still no luck.

Link to comment
Share on other sites

Mr. Zero

This?

#include <GUIConstants.au3>
#include <WindowsConstants.au3>

$hGUI = GUICreate("Test GUI", 300, 200, -1, -1, BitOR($WS_POPUP, $WS_CAPTION, $WS_SYSMENU), $WS_EX_TOOLWINDOW)

GUISetState()

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE
Yes! That is exactly what I want. Thank you. :)

Well if I'm allowed to be a bit picky, you might notice that the title bar have become smaller by the $WS_EX_TOOLwindow. Is there any alternative to this? I tried some other $WS_EX but it seems only toolwindow works. :)

Link to comment
Share on other sites

Mr. Zero

Well if I'm allowed to be a bit picky, you might notice that the title bar have become smaller by the $WS_EX_TOOLwindow.

Hmm...this is a trick:

#include <GUIConstants.au3>
#include <WindowsConstants.au3>

$hGUI = GUICreate("Test GUI", 300, 200, -1, -1, BitOR($WS_POPUP, $WS_CAPTION, $WS_SYSMENU))

GUISetState()

DllCall("user32.dll", "int", "SendMessage", "hwnd", $hGUI, "int", $WM_SETICON, "int", 1, "str", 0)
DllCall("user32.dll", "int", "SendMessage", "hwnd", $hGUI, "int", $WM_SETICON, "int", 0, "str", 0)
DllCall("user32.dll", "int", "DrawMenuBar", "hwnd", $hGUI)

Do
Until GUIGetMsg() = $GUI_EVENT_CLOSE

But system menu don`t removed.

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...