GUIウィンドウを作成します。
GUICreate ( "title" [, width [, height [, left [, top [, style [, exStyle [, parent]]]]]]] )
パラメータ
title | ダイアログボックスのタイトル。 |
width | [オプション] ウィンドウの幅。 |
height | [オプション] ウィンドウの高さ。 |
left | [オプション] ダイアログボックスの左端。デフォルト(-1)ではウィンドウは中央に配置されます。定義する場合はtopも定義しなければなりません。 |
top | [オプション] ダイアログボックスの上端。デフォルト(-1)ではウィンドウは中央に配置されます。 |
style | [オプション] ウィンドウのスタイルを定義します。GUI Control Styles Appendixを参照。 -1を使用するとデフォルトスタイルになります。デフォルトスタイルは$WS_MINIMIZEBOX、$WS_CAPTION、$WS_POPUP、$WS_SYSMENUスタイルの組み合わせです。 いくつかのスタイルは常に使用されます。$WS_MAXIMIZEBOXまたは$WS_SIZEBOX を指定すると$WS_CLIPSIBLINGSと$WS_SYSMENUが常に使用されます。 |
exStyle | [オプション] ウィンドウの拡張スタイルを定義します。下記のExtended Style Tableを参照。-1がデフォルトです。 |
parent | [オプション] 事前に作成された別のウィンドウのハンドル。新しいウィンドウはその子ウィンドウになります。 |
返し値
成功 | ウィンドウハンドルを返します。 |
失敗 | ウィンドウが作成できなかった場合、0を返し@errorを1に設定します。 |
注意
デフォルトではダイアログボックスはサイズ変更不可、最大化不可です。変更のためにstyleパラメータにWS_SIZEBOXまたはWS_MAXIMIZEBOXを使用することができます。Extended Style | result |
$WS_EX_ACCEPTFILES | GUIウィンドウ内のエディットコントロール、インプットコントロールへのドラッグアンドドロップによるファイル名入力を可能にします。コントロールにはGUICtrlSetStateを使用して$GUI_DROPACCEPTEDを設定する必要があります。他のコントロールのドラッグアンドドロップ情報は@GUI_DRAGID、@GUI_DRAGFILE、@GUIDROPIDを使用して取得できます。 |
$WS_EX_APPWINDOW | ウィンドウが表示状態の際にタスクバー上でトップレベルになるよう設定します。 |
$WS_EX_CLIENTEDGE | ウィンドウがくぼんだ縁のボーダーを持つように設定します。 |
$WS_EX_CONTEXTHELP | タイトルバーにクエスチョンマークをインクルードします。WS_MAXIMIZEBOX、WS_MINIMIZEBOXと同時に使用することはできません。 |
$WS_EX_DLGMODALFRAME | 二重のボーダーを持つウィンドウを作成しますstyleパラメーターにWS_CAPTIONを設定することによりオプションでウィンドウにタイトルバーを設定できます。 |
$WS_EX_MDICHILD | 親ウィンドウといっしょに動く子ウィンドウを作成します(実際のMDIシミュレーションはされません)。 |
$WS_EX_OVERLAPPEDWINDOW | WS_EX_CLIENTEDGEとWS_EX_WINDOWEDGEの組み合わせ。 |
$WS_EX_STATICEDGE | 3Dボーダーのウィンドウを作成します。これはユーザー入力を受け付けないアイテムに使用することが意図されています。 |
$WS_EX_TOPMOST | このスタイルを設定するとアクティブでない場合でも常にウィンドウが最前面に表示されます。 |
$WS_EX_TRANSPARENT | 親子レベルで同レベルのウィンドウのビットがが既に描画されているためにウィンドウが透明になります。 |
$WS_EX_TOOLWINDOW | ツールウィンドウを作成します。このウィンドウはフローティングツールバーとして使用することが意図されています。ツールウィンドウは通常のタイトルバーよりも短いタイトルバーを持っており、ウィンドウタイトルは小さいフォントを使って書かれます。ツールバーはタスクバーやダイアログボックス内には表示されずユーザーがALT+TABを押したとき表示されます。ツールウィンドウがシステムメニューを持つ場合、そのアイコンはタイトルバーには表示されませんがALT+SPACEを押すことでシステムメニューは表示されます。 |
$WS_EX_WINDOWEDGE | ウィンドウが浮き彫りのエッジのボーダーを持つように設定します。 |
$WS_EX_LAYERED | 影つきウィンドウを作成します。子ウィンドウには使用できません。 |
関連
GUISetParameters..., GUICtrlCreate..., GUIGetMsg, GUISwitch, GUIGetStyle, GUIDelete, WinGetHandle, GUICtrlSetDefBkColor, GUICtrlSetDefColor, GUIGetCursorInfo
例
#include <GUIConstantsEx.au3>
#include <WindowsConstants.au3>
Opt('MustDeclareVars', 1)
Example1()
Example2()
;example1
Func Example1()
Local $msg
GUICreate("My GUI") ; 表示時に中央に表示されるダイアログボックスを作成
GUISetState(@SW_SHOW) ; 空のダイアログボックスを表示
; ダイアログが閉じられるまでGUIを実行
While 1
$msg = GUIGetMsg()
If $msg = $GUI_EVENT_CLOSE Then ExitLoop
WEnd
GUIDelete()
EndFunc ;==>example1
; 例2
Func Example2()
Local $gui, $background, $pic, $basti_stay, $msg
Local $sFile = "..\GUI\logo4.gif"
$gui = GUICreate("Background", 400, 100)
; 背景画像
$background = GUICtrlCreatePic("..\GUI\msoobe.jpg", 0, 0, 400, 100)
GUISetState(@SW_SHOW)
; 透明なMDI子ウィンドウ
$pic = GUICreate("", 169, 68, 20, 20, $WS_POPUP, BitOR($WS_EX_LAYERED, $WS_EX_MDICHILD), $gui)
; 透明な画像
$basti_stay = GUICtrlCreatePic($sFile, 0, 0, 169, 68)
GUISetState(@SW_SHOW)
Do
$msg = GUIGetMsg()
Until $msg = $GUI_EVENT_CLOSE
EndFunc ;==>Example2