Sign in to follow this  
Followers 0
jpm

Autoit-gui 102.12 Available

15 posts in this topic

Now I think I run out of fuel.

This ultimate update integrate the current 102 beta upload by Jon and only one addition each label control can have a different background color and also textcolor.

Max number of control have been increase to 512

here is an example

Posted Image

Difficult to do English/American flag with label control.

Download as usual at http://www.hiddensoft.com/fileman/users/jpm/AutoIt3-gui/

Share this post


Link to post
Share on other sites



#2 ·  Posted (edited)

Thanks for this fast 'beta-release' B)

This rocks, now I can use "Reg-Remote"-functions and "Gui" in my program :angry:

I don't have to use things like:

RunWait(@comspec & " /c reg delete \\" & $pcname & "\HKLM\Software...."

I cann now use:

RegDelete("\\" & $pcname & "\HKLM\Software....")

One more command easier for me :whistle:

Edited by Holger

Share this post


Link to post
Share on other sites

Thanks for this fast 'beta-release' B)

This rocks, now I can use "Reg-Remote"-functions and "Gui" in my program  :angry:

I don't have to use things like:

RunWait(@comspec & " /c reg delete \\" & $pcname & "\HKLM\Software...."

I cann now use:

RegDelete("\\" & $pcname & "\HKLM\Software....")

One more command easier for me  :whistle:

You Welcome.

What can I do less after Jon upload the code on your request.

Perhaps add in the color example a german flag with a progress bar which is a differentiator from AU3GUI... products.

Have a nice scripting

Share this post


Link to post
Share on other sites

@jpm: I integrated an "animation-function" in it.

It's not really working perfect now, but it's nice (a little bit).

At the moment I use it like the progressbar to show that something is going on in the script, for instance copying or working...

The autoit-script then looks like:

...
Global $ACS_CENTER = 1
Global $ACS_TRANSPARENT = 2; default
Global $ACS_AUTOPLAY = 4
Global $ACS_TIMER = 8 
...
$ani = GUISetControl("ani","copyfile.avi",50,50,50,32,$ACS_AUTOPLAY)
....
GUIWrite($ani,1)
...

1 in GUWrite means then to play the animation and other to stop it.

If it is better I will notify you...

Regards Holger

Good night :whistle:

Share this post


Link to post
Share on other sites

@jpm: I integrated an "animation-function" in it.

It's not really working perfect now, but it's nice (a little bit).

At the moment I use it like the progressbar to show that something is going on in the script, for instance copying or working...

The autoit-script then looks like:

...
Global $ACS_CENTER = 1
Global $ACS_TRANSPARENT = 2; default
Global $ACS_AUTOPLAY = 4
Global $ACS_TIMER = 8 
...
$ani = GUISetControl("ani","copyfile.avi",50,50,50,32,$ACS_AUTOPLAY)
....
GUIWrite($ani,1)
...

1 in GUWrite means then to play the animation and other to stop it.

If it is better I will notify you...

Regards Holger

Good night :whistle:

Is it more than what Larry did with the horse.ani which is working today?

Share this post


Link to post
Share on other sites

#6 ·  Posted (edited)

@jpm: Larry uses the "horse.ani" which is a cursor-ani (more like an icon-avi you know), thatswhy controltype=icon.

But try this with another animation.

Ok, what I mean is not a movie-file but such animations which you see if you copy something, 'searching', working, net-connecting, and so on...

Holger

This is very often my reference:

http://msdn.microsoft.com/library/en-us/sh...ionoverview.asp

Edited by Holger

Share this post


Link to post
Share on other sites

@jpm: Larry uses the "horse.ani" which is a cursor-ani (more like an icon-avi you know), thatswhy controltype=icon.

But try this with another animation.

Ok, what I mean is not a movie-file but such animations which you see if you copy something, 'searching', working, net-connecting, and so on...

Holger

This is very often my reference:

http://msdn.microsoft.com/library/en-us/sh...ionoverview.asp

I am waiting the result :whistle:

Share this post


Link to post
Share on other sites

Seems an old bug here :whistle:

Please, look for example:

Opt("GUINotifyMode", 1)

GUICreate("Question", 320, 120, @DesktopWidth/2-160, @DesktopHeight/2-45)

GUISetControl ("label", "Label 1 text (ref must be 1)", 90, 10, 250, 16)
GUISetControl ("label", "Label 2 text (ref must be 2)", 90, 35, 250, 16)

$save = GUISetControl ("button", "Save", 20,  60, 90, 24)
$restore = GUISetControl ("button", "Restore", 115,  60)
$cancel = GUISetControl ("button", "Cancel", 210,  60)

;GUISetControlEx ($save, 256)
;GUISetControlEx ($restore, 256)

GUISetControl ("label", "Label 3 text (ref must be 6)", 90, 95, 150, 26)

While GUImsg() > 0
    MsgBox (0, "Ref number is", GUIRead())
Wend

Second label returns ref = 1, but must be ref = 2, third also return 1 - must be 6.

And this is not all: if you uncomment one (or both) of GUISetControlEx lines,

then all labels will return reference of last button for which I set state!

Looks like this wrong only with labels, icons and pictures. All other controls works as expected.

I've found that this bug first appear in 101.10, in the 101.9 (maybe 8) labels stop

return ID after first click, 101.07 seems to works right.

Share this post


Link to post
Share on other sites

@Kot

Thanks I have a look. You really want to have 102.13 delivered...

Share this post


Link to post
Share on other sites

#10 ·  Posted (edited)

@jpm: could you already solve this problem?

this is the buggy function:

case WM_COMMAND:
// (LOWORD) wParam is no good if the focus has been set
// by GUI_FOCUS  on a specific control and not change
// in this case a {ENTER} will return 1  for wParam
// instead of the index of the control having the focus
//
// BETWEEN THIS
hWnd=GetFocus();
i = GetControlID(hWnd);

// if no related to a Gui control use passed info (Combo box)
if (i==-1)
i = LOWORD(wParam);

//if (ObjAction((HWND)lParam, i, HIWORD(wParam)))
// AND THIS THERE'S THE PROBLEM
//
// next line is from version 101.7 which gives back the correct Ctrl-IDs
if (ObjAction((HWND)lParam,LOWORD(wParam),HIWORD(wParam)))
return 0;
break;

I will send you the code-parts for ani-control in the next days, but not today and tommorrow, cause today is my birthday :evil: ... :whistle:B):angry:

Edited by Holger

Share this post


Link to post
Share on other sites

@jpm: could you already solve this problem?

this is the buggy function:

case WM_COMMAND:
// (LOWORD) wParam is no good if the focus has been set
// by GUI_FOCUS  on a specific control and not change
// in this case a {ENTER} will return 1  for wParam
// instead of the index of the control having the focus
//
// BETWEEN THIS
hWnd=GetFocus();
i = GetControlID(hWnd);

// if no related to a Gui control use passed info (Combo box)
if (i==-1)
i = LOWORD(wParam);

//if (ObjAction((HWND)lParam, i, HIWORD(wParam)))
// AND THIS THERE'S THE PROBLEM
//
// next line is from version 101.7 which gives back the correct Ctrl-IDs
if (ObjAction((HWND)lParam,LOWORD(wParam),HIWORD(wParam)))
return 0;
break;

I will send you the code-parts for ani-control in the next days, but not today and tommorrow, cause today is my birthday  :lmao: ...  :whistle:  B)  :evil:

Happy birthday.

As I understand we are of the same sign. Mine is coming very soon.

Thanks,

I find out the bugs around this clicking determination. :iamstupid: I am almost ready to upload 102.13 for solving those issues.

:angry:

Share this post


Link to post
Share on other sites

#12 ·  Posted (edited)

Thanks; yeah I realized again that I'm a bloody beginner in c++:

However, maybe this is/was my solution:

case WM_COMMAND:
   hWnd=GetFocus();
   i = GetControlID(hWnd);
   if (i==-1)
      i = LOWORD(wParam);

   if (i!=LOWORD(wParam))
   {
      if (ObjAction((HWND)lParam,LOWORD(wParam),HIWORD(wParam)))
      return 0;
   }
   else
   {
      if (ObjAction((HWND)lParam,i,HIWORD(wParam)))
      return 0;
   }
break;

Good night and read you...

Edited by Holger

Share this post


Link to post
Share on other sites

Thanks; yeah I realized again that I'm a bloody beginner in c++:

However, maybe this is/was my solution:

case WM_COMMAND:
   hWnd=GetFocus();
   i = GetControlID(hWnd);
   if (i==-1)
      i = LOWORD(wParam);

   if (i!=LOWORD(wParam))
   {
      if (ObjAction((HWND)lParam,LOWORD(wParam),HIWORD(wParam)))
      return 0;
   }
   else
   {
      if (ObjAction((HWND)lParam,i,HIWORD(wParam)))
      return 0;
   }
break;

Good night and read you...

I did someting different check 102.13 just uploaded

I am not sure the right way due to my focus fight. :whistle:

Share this post


Link to post
Share on other sites

You can do (most of) the Canadian flag with this: :D

Opt("TrayIconDebug", 1)
#include "GUI_include.au3"
Opt("GuiCoordMode", 2)

GUICreate("My GUI", 400,100,-1,-1,$WS_SIZEBOX) ; will create a dialog box that when displayed is centered

GUISetControl("label", "", 0,0,100,100)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFFFFFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFFFFFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x00,0xFF)
GuiWaitClose()

Now I just have to figure out how to put the maple leaf in there.


David Nuttall
Nuttall Computer Consulting

An Aquarius born during the Age of Aquarius

AutoIt allows me to re-invent the wheel so much faster.

I'm off to write a wizard, a wonderful wizard of odd...

Share this post


Link to post
Share on other sites

You can do (most of) the Canadian flag with this:  :D

Opt("TrayIconDebug", 1)
#include "GUI_include.au3"
Opt("GuiCoordMode", 2)

GUICreate("My GUI", 400,100,-1,-1,$WS_SIZEBOX); will create a dialog box that when displayed is centered

GUISetControl("label", "", 0,0,100,100)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFFFFFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x0,0xFFFFFF)
GUISetControl("label", "", 0,-1)
GUISetControlEx(-1,-1,$GUI_DOCKLEFT+$GUI_DOCKTOP+$GUI_DOCKBOTTOM, "", 0x00,0xFF)
GuiWaitClose()

Now I just have to figure out how to put the maple leaf in there.

You just need some sugar ...

Share this post


Link to post
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
Sign in to follow this  
Followers 0