Jump to content

Recommended Posts

Posted

User Interface Builder

  

Overview

  • Use this tool to visually design Windows applications with a focus on Metro windows, standard windows, and Tool windows.

  • This is for users who want a faster and simpler development tool.

  • Drag-and-drop GUI creation, code generation, and easy control alignment tools.

  • No more clicking through property sheets to set variable names, sizes, and the control’s text.

     

Features

  • Metro Controls for all window types

  • WYSIWYG real-time preview

  • Generates AutoIt GUI and message loop code

  • Multiple control selection and manipulation

  • Make additional selections with the CTRL key

  • Accelerated control movements with the SHIFT key

  • Change controls position with mouse or arrow keys

  • Double click a control to precisely set its size and text

  • Save/load GUI layouts and Control layouts to files

  • Custom styles/themes and Controls using Metro

  • Snap-to-guide, and toolbar alignment aids

  • Drag down guides from the top and left sides of the Designer window

  • Copy-n-paste between different window types

 

Technical Details

  • .Gui/.Ctrls file is a simple delimited text file

  • Copy-n-paste is a similar file without the window specifications

  • The application is meant to be portable, so it is one file

  • The only Custom UDFs in use is Metro 5.1, and my Metro Expansion pack

  • The script uses Label controls for everything. No GDI was used.

  • Every control handle is saved in an array

  • Maps are used in Metro and in future UDFs containing new controls
  • You need Metro 5.1 UDF

 

$GuiWindow[dynamic][18]

·       $GuiWindow[$GuiInFocus][0] ; Selection rectangle handle

·       $GuiWindow[$GuiInFocus][1] ; Upper left sizing anchor

·       $GuiWindow[$GuiInFocus][2] ; Lower right square sizing anchor

·       $GuiWindow[$GuiInFocus][3] ; Lower left sizing anchor

·       $GuiWindow[$GuiInFocus][4] ; Working window's handle

·       $GuiWindow[$GuiInFocus][5] ; Horizontal pull sizing anchor

·       $GuiWindow[$GuiInFocus][6] ; Vertical pull sizing anchor

·       $GuiWindow[$GuiInFocus][7] ; Top constrained Vertical pull circle

·       $GuiWindow[$GuiInFocus][8] ; Left constrained Horizontal pull circle

·       $GuiWindow[$GuiInFocus][9] ; Scope and name, ex. Global $hWnd

·       $GuiWindow[$GuiInFocus][10] ; Properties, ex. GuiSet*

·       $GuiWindow[$GuiInFocus][11] ; Horizontal guide line visual

·       $GuiWindow[$GuiInFocus][12] ; Vertical guide line visual

·       $GuiWindow[$GuiInFocus][13] ; Drag Titlebar for created for Metro windows

·       $GuiWindow[$GuiInFocus][14] ; Left Align Button

·       $GuiWindow[$GuiInFocus][15] ; Center Align Button

·       $GuiWindow[$GuiInFocus][16] ; Right Align Button

·       $GuiWindow[$GuiInFocus][17] ; Horizontally Align Button

 

$GuiControl[dynamic][7]

·       $GuiControl[$ControlCount][0] ; Control handle

·       $GuiControl[$ControlCount][1] ; Function that creates the control

·       $GuiControl[$ControlCount][2] ; Scope and variable name

·       $GuiControl[$ControlCount][3] ; Style

·       $GuiControl[$ControlCount][4] ; Extended Style

·       $GuiControl[$ControlCount][5] ; Functions run after creation. Ex. GuiSet*

·       $GuiControl[$ControlCount][6] ; Text for Metro controls

 

$GuiUndo [256]

·       Revolving push array of string to call to create the undo action

 

Limitations and known issues

  • Resizing the Metro window with the mouse is flaky

  • Changing control and window styles is not implemented

  • Window size cannot be changed precisely

  • Undo functionality might cause problems with code generation

  • No Redo implemented

 

 Thank you BB19 and everyone that contributed to Metro UDF.

 

image.png

MetroGUI_UDF_xpk.au3 UserInterfaceBuilder.au3

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
×
×
  • Create New...