#89214 - 2002-11-03 10:15 PM
KiXforms - Version 2.1.2 (Build 36) Released
|
rclarke
Starting to like KiXtart
Registered: 2001-06-08
Posts: 178
Loc: Oxfordshire, United Kingdom.
|
On behalf of Shawn, I am pleased to announce the release of KiXforms 2.1.2 (Build 36) which is available for download from the KiXforms web site:
KiXforms Download Page
The release notes are as follows:
ListView Object
Added support for deleting columns from the ListView object. The syntax is as follows:
$ListView.Columns(#).Remove $ListView.Columns.Remove(#)
SpinButton Object
Fixed the SpinButton long duration click behavior. The control will no longer stall when holding down the arrow buttons. Also corrected automatic SpinButton acceleration. The new behavior is that as the arrows buttons are depressed for various durations, the increment (or decrement) will accelerate by more than one. Refer to following table for acceleration levels:
0-2 Seconds = Value +/-1 2-5 Seconds = Value +/-5 5+ Seconds = Value +/-20
Icon Support
Added support for extracting icons from EXEs. The syntax is to provide the full path of an executable followed by the index number of the icon to extract; for example:
$Button.Icon = "c:\folder\program.exe;n"
This release of KiXforms will return the 32x32 (large) version of the icon. It cannot return the 16x16 (small) version of the icon at this time.
Bug Fix
Fixed the changing of BorderStyle=0 for all controls. Prior behavior did not account for expansion or contraction of the client area by the addition or removal of a border. The effect was mostly evident for the Image control where bitmap a was stretched incorrectly. The new behavior accounts for this.
As always, please feel free to add any comment, questions or feedback to this thread.
Rod.
|
Top
|
|
|
|
#89215 - 2002-11-03 11:04 PM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Shawn
Administrator
Registered: 1999-08-13
Posts: 8611
|
Just wanted to add that when I implemented the EXE icon extraction code, because of the nature of the way the icon/path is specified (its a property, not a method call), I had to choose between returning a small or large icon - and I decided to go with the large icon (32x32).
If the EXE has only small (16x16) icons, they will still return as 32x32 but then the developer can decide to shrink it back down to 16x16 using the Width/Height properties. I thought that this might make a better alternative then to have the 16x16 expanded to 32x32.
In the future, I will be implementing the LoadIcon() method call for all objects, and it will go something like this:
$Button.Icon = $Button.LoadIcon("path",index,size)
And this will bring the extraction of icons from DLLs,EXEs and ICOs under one roof, and allow the developer to specify the icons size and other things. As well, might make it so that if the developer specified -1 for the index, the method would return the total number of icons available in the resource. Not sure if this would be terribly usefull or not, but the method version extraction would give us this flexibility.
-Shawn [ 03. November 2002, 23:06: Message edited by: Shawn ]
|
Top
|
|
|
|
#89217 - 2002-11-04 02:07 PM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Shawn
Administrator
Registered: 1999-08-13
Posts: 8611
|
j, as discussed will look into this issue and the zorder thingy asap.
Just as an fyi, and with the caveat that its only just started and subject to change, the beginnings of the RichTextBox object are included in this release (build 36) ... for anyone thats interested and has an RTF file they would to embed within a form, heres a sample script:
code:
Break On $Form = CreateObject("Kixtart.Form") $Form.Size = 600,400 $Form.FontSize = 9 $Form.FontName = "MS Sans Serif" $RichEdit = $Form.RichTextBox $RichEdit.Location = 10,10 $RichEdit.Right = $Form.ClientWidth - 10 $RichEdit.Bottom = $Form.ClientHeight - 10 $RichEdit.LoadFile(".\winzip.rtf") $Form.Center $Form.Show While $Form.Visible $=Execute($Form.DoEvents) Loop exit
From my experience, and in seeing what Jochen is up to (his idea), the RichTextBox control has one very cool use. If you want to build an online HELP system for your script, simply write it up using wordpad and RTF, then create a simple dialog form with an embedded RichTextBox and a close button, and display that. I must admit that it looks very professional.
|
Top
|
|
|
|
#89222 - 2002-11-04 04:20 PM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Chris S.
MM club member
Registered: 2002-03-18
Posts: 2368
Loc: Earth
|
If you do, I promise to switch my KiXGUI logon script over to KiXforms.
|
Top
|
|
|
|
#89229 - 2002-11-07 12:36 AM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Jochen
KiX Supporter
Registered: 2000-03-17
Posts: 6380
Loc: Stuttgart, Germany
|
|
Top
|
|
|
|
#89230 - 2002-11-06 01:58 PM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Shawn
Administrator
Registered: 1999-08-13
Posts: 8611
|
wiz, was able to to verify expected behavior of hiding/showing ProgressBar with this code. In terms of negating the usefullness of .visible, the following statements have two very different meanings:
$ProgressBar.Visible = 0/1
Hides or shows the progressbar. The object still persists and is 100% functional and usable, can even set properties and change the Value while its hidden. This statement:
$ProgressBar = 0
Disposes the object completely so it doesn't exist anymore. Calling properties and methods on a disposed handle may or may not generate Kixtart runtime errors.
Heres the code:
code:
Break On $Form = CreateObject("Kixtart.Form") $Form.Size = 400,200 $ProgressBar = $Form.ProgressBar() $ProgressBar.Center $ProgressBar.Value = 50 $Button = $Form.Button() $Button.Top = 10 $Button.Left = $Form.ClientWidth-$Button.Width-10 $Button.OnClick = "Button_Click" Function Button_Click $ProgressBar.Visible = Not $ProgressBar.Visible EndFunction $Form.Center $Form.Show While $Form.Visible $=Execute($Form.DoEvents) Loop
-Shawn [ 06. November 2002, 13:59: Message edited by: Shawn ]
|
Top
|
|
|
|
#89232 - 2002-11-06 03:01 PM
Re: KiXforms - Version 2.1.2 (Build 36) Released
|
Shawn
Administrator
Registered: 1999-08-13
Posts: 8611
|
Good one - it does work (the progressbar goes invisible) but the frame doesn't refresh properly, try your code again, then "wipe" a window (ie, the DOS box) over the frame - should see that the progressbar is hidden. hmmm ... must fix that. Or might try this code:
code:
Break On $frmMain = CreateObject("Kixtart.Form") $frmMain.Size = 300, 373 $frmMain.SysMenu = 0 $frmMain.Text = "Welcome to the @DOMAIN Domain" $frmMain.Center $btn = $frmMain.Button $btn.OnClick = "btn_Click" Function btn_Click $prgStatus.Visible = 0 $frmMain.ReFresh EndFunction $fraStatus = $frmMain.Frame $fraStatus.Size = 280, 115 $fraStatus.Center $fraStatus.Top = 225 $fraStatus.Text = " Progress " $prgStatus = $fraStatus.ProgressBar $prgStatus.Size = 260, 17 $prgStatus.Center $prgStatus.Style = 1 $prgStatus.Top = 40 $frmMain.Center $frmMain.Show While $frmMain.Visible $=Execute($frmMain.DoEvents) Loop
|
Top
|
|
|
|
Moderator: Shawn, ShaneEP, Ruud van Velsen, Arend_, Jochen, Radimus, Glenn Barnas, Allen, Mart
|
0 registered
and 557 anonymous users online.
|
|
|