Jump to content

GUI Creating to GUI Calculator - (Dialog Creation)

Recommended Posts


I am very new to AutoIt, just started learning a few days ago. On the forum I am trying to find how the mentioned GUI calculator can be amended, and  made to work. Yesterday I thought I found something, but I was tired and did not write down where I found it. Now, today, I can not find the topic again, unfortunately.

Can someone tip me where to find, and how to search better on the forum. I really want to learn more by studying and trying the examples, on a beginner level.

Thank you,

Ad R.

Link to post
Share on other sites
22 minutes ago, Jfish said:

Not sure if this is what you mean but in the help file there is a tutorial section.  One topic is "Simple Calculator GUI".

Yes, but that is only the code to create the GUI dialog. What I am searching for, is code to make it actually work; I have seen the names "guinness" and "Azjio" mentioned, but, as I wrote, I can not locate this again. I am probably stupid, not knowing exactly how to search the forums.

Link to post
Share on other sites

@kwibus, welcome to AutoIt and to the forum.

why won't you try it yourself? copying others' solutions will not improve your skills like doing it on your own.

i advise you study the examples for various GUI functions, like GUICReate, GUIGetMsg, etc. once you understand those, it becomes easier to complete the functionality of the calculator.


EDIT: changed AutoIT to AutoIt - thanks to TheDcoder for the post hereunder.

Edited by orbs
Link to post
Share on other sites


Everybody, thanks for helping me.

Now I have a more specific question, about these lines of code:

            If StringInStr($i_EdtScreen, '.') = 0 Then
                GUICtrlSetData($i_EdtScreen, '.', 1)

The idea behind this: in case a button is clicked, to insert a period in a number, only one period is valid to build a real number. So, if there is already a period in the input edit screen, there should not be a period added. I hope you understand what I mean.

But the code above allows a second, third etc. period added. What am I doing wrong?

Link to post
Share on other sites
11 minutes ago, kylomas said:


You are missing the guictrlread in the stringinstr test...on stupid phone and cant type very well...


Yes! Thank you, @kylomas This the solution:

$i_text = GUICtrlRead($i_EdtScreen)
            If StringInStr($i_text, '.') = 0 Then GUICtrlSetData($i_EdtScreen, '.', 1)

Thank you again, now I have got more knowledge to get further!


Link to post
Share on other sites

Hello again,

I have a new question about something I don't understand. It is about 

Conditionally chooses one of two responses based on the result of an expression.

the code:

(StringLeft($sVar, 1) == '-') ? ($sVar = StringTrimLeft($sVar, 1)) : ($sVar = '-' & $sVar)

this gives me an error: Statement cannot be just an expression.

I really do not understand this error message; what is wrong with my code?

Could it be that the responses can only be strings, string literals?

Thank you, Ad

Edited by kwibus
another idea
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
  • Recently Browsing   0 members

    No registered users viewing this page.

  • Create New...