Checking from the messagebox was the problem now it works. Thanks --- In [EMAIL PROTECTED], "Tim Rupp" <[EMAIL PROTECTED]> wrote: > You will need to check the button that is clicked from your MessageBox > and act upon that. > If your TestBox is named txtEnter...then txtEnter.Clear() will > work...also make sure to clear > the variable value at that time too. > > > -----Original Message----- > From: sramey28 [mailto:[EMAIL PROTECTED] > Sent: Tuesday, August 31, 2004 2:42 PM > To: [EMAIL PROTECTED] > Subject: [vbhelp] Re: trying to make calculator with vb.net > > > Guess what I got it to work for a operators and the answers are > right including decimals. What I was missing was storing the > function that was clicked. But how do I get the textbox to clear and > reset after the user tried division by zero and got my message box > telling them they attempted division by zero. > > After clicking Ok for the message box the textbox should reset for > more input. Right now they have to click clear which does the job, > but I want it to happen after clicking just OK. > > txtEnter.Clear() > txtEnter.text = string.empty > txtEnter.ResetText > number = Nothing > > None of the above lines work to clear the textbox after clicking ok > on messagebox. How do I do that, I can't even use the code from the > Clear button. > > Why does this code work to clear for new input and nothing else will > do it. > > Private Sub btnClear_Click( _ > ByVal sender As Object, _ > ByVal e As System.EventArgs) _ > Handles btnClear.Click > txtEnter.Clear() > number = Nothing > End Sub > > Thanks > Sandra > > --- In [EMAIL PROTECTED], Joe Rutsky <[EMAIL PROTECTED]> wrote: > > I did a calculator for a class once. Right now I can't find it. > Mine was RPN, but I think that the same logic would apply. > > > > When you hit a number, make the program add the number to the end > of the string in the textbox. > > > > When you hit a function - add, multiply, etc. - have the program > store the value in the textbox, store the function that you pressed > and clear the textbox for the next number entry. > > > > When equals is pressed, then you would store the second number in > a variable, use a case structure (or an if) to find which operation > to perform on the two numbers and spit out an answer. > > > > Then, print the answer to the textbox. You would have to set all > variables to zero to start the new problem and have a the program > just reprint the existing number in the textbox if you haven't yet > pressed in a function when the equals sign is pressed. > > > > I will see if I can find the code for the calculator I made is > somewhere - but it has been a while. > > > > I hope this helps. > > > > Joe > > > > sramey28 <[EMAIL PROTECTED]> wrote: > > > > Ok Tim I worked with what you told me. Here is my code now. I > don't > > understand how you are resetting the cursor back to first > character > > before the operator Add ect. is clicked. So then I can't assign > that > > number to opt2. Right now I can enter 1 number click + and then > > enter a new number. I then click = and the answer given is the > > second number plus itself. The first number is ignored, so the > > second number is being assigned to opt1 and replacing the first > > number. So the assignment of a number to (opt2) isn't happening. I > > think there should be more to the textchange of the textbox but > > what? > > > > Private Sub btnNine_Click( _ > > ByVal sender As System.Object, _ > > ByVal e As System.EventArgs) _ > > Handles btnNine.Click > > number = number + "9" > > txtEnter.Text = number > > End Sub > > > > Private Sub btnDecimal_Click( _ > > ByVal sender As System.Object, _ > > ByVal e As System.EventArgs) _ > > Handles btnDecimal.Click > > number = number + "." > > txtEnter.Text = number > > End Sub > > > > Public Function Addition() As Integer > > answer = opt1 + opt2 > > > > End Function > > > > Private Sub btnAdd_Click( _ > > ByVal sender As System.Object, _ > > ByVal e As System.EventArgs) _ > > Handles btnAdd.Click > > txtEnter.Clear() > > txtEnter.ResetText() > > txtEnter.Text = String.Empty > > > > number = Nothing 'this clears the box so only the next > > number I enter appears, but then I think this cancels out the > first > > number. > > > > End Sub > > > > Private Sub txtEnter_TextChanged( _ > > ByVal sender As Object, _ > > ByVal e As System.EventArgs) _ > > Handles txtEnter.TextChanged > > opt1 = Val(txtEnter.Text) > > opt2 = Val(txtEnter.Text) 'where do I put this line. > > End Sub > > > > Private Sub btnEqual_Click( _ > > ByVal sender As Object, _ > > ByVal e As System.EventArgs) _ > > Handles btnEqual.Click > > opt2 = Val(txtEnter.Text) 'does it go here > > Addition() > > txtEnter.Text = CStr(answer) > > End Sub > > > > --- In [EMAIL PROTECTED], "sramey28" wrote: > > > Thanks this should be a big help. > > > > > > > > > --- In [EMAIL PROTECTED], "Tim Rupp" wrote: > > > > Why do anything at all with number presses....let your text > box > > > hold the > > > > value as it is entered from the keystrokes using the > > > TextBox.TextChanged > > > > method to gather your input number. Perhaps you want to verify > > > that the > > > > keystroke is numeric, decimal point, and perhaps A-E if your > > going > > > to > > > > allow hex calculations...but that's your choice. When the > > operand > > > key is > > > > hit (+,-,/,*) just take the value of your text display and > > assign > > > that > > > > to a temporary value (Operand1 = Val(txtEnter.Text) ) > > > > > > > > At that point I'd highlight the text in the text box and reset > > the > > > > cursor to the first character so that the next keystroke entry > > will > > > > clear your text box. Then assign the second operand and > perform > > the > > > > operation in the same manner when the equals key or successive > > > > calulation key is struck. At that point you would perform the > > > > calculation, assign the result to your result value, and > display > > > that > > > > value in your text box (once again highlighting the text and > > > placing the > > > > cursor at the beginning of the field so that additional > entries > > > from the > > > > keyboard once again clear your display. > > > > > > > > For even more fun, try the RPN calculator type! > > > > > > > > Enjoy, > > > > tim > > > > > > > > > > > > -----Original Message----- > > > > From: sramey28 [mailto:[EMAIL PROTECTED] > > > > Sent: Monday, August 30, 2004 4:57 PM > > > > To: [EMAIL PROTECTED] > > > > Subject: [vbhelp] trying to make calculator with vb.net > > > > > > > > > > > > Hi, I'm trying to learn vb.net for work. I only have books and > > > > online class and online help to learn from. I'm trying to make > a > > > > simple calculator. here is some of my code. The btnNine_click > is > > > > just like procedures for the numbers 0-8. What I need help > with > > is > > > > the idea of the Display (txtEnter) showing the right numbers. > > > Right > > > > now I'm only working on addition of numbers. I'm not sure if > the > > > > addition function has to be a function or sub. Here are the > > steps > > > to > > > > my problem. > > > > > > > > 1. any number is clicked. > > > > 2. This number shows up in display > > > > 3. Click the (add +) button > > > > 4. previous number disappears, leaving display blank > > > > 5. Next Click another number. > > > > 6. That one appears in display > > > > 7. Now click (equal =) button > > > > 8. The answer displayed is First number plus itself. > > > > > > > > I think my problem lies in the Addition function line: > > > > answer = Double.Parse(number) + Double.Parse(lblNum.Text) > > > > both number and lblNum.text point to the same number. > > > > > > > > Main question > > > > How do I get the second number entered recongized and added to > > the > > > > first number entered. This easy if there are two textboxes, > but > > > with > > > > one I don't know how to do this. > > > > > > > > Private Sub btnNine_Click( _ > > > > ByVal sender As System.Object, _ > > > > ByVal e As System.EventArgs) Handles btnNine.Click > > > > number = number + "9" > > > > txtEnter.Text = number > > > > End Sub > > > > > > > > Private Sub btnDecimal_Click( _ > > > > ByVal sender As System.Object, _ > > > > ByVal e As System.EventArgs) Handles btnDecimal.Click > > > > number = number + "." > > > > txtEnter.Text = number > > > > End Sub > > > > > > > > Public Function Addition() As Integer > > > > answer = Double.Parse(number) + Double.Parse(lblNum.Text) > > > > lblNum.Text = String.Empty 'cleared for 2nd number > > > enter > > > > number = "" 'tried clear number variable for second > > > number > > > > End Function > > > > > > > > Private Sub btnAdd_Click( _ > > > > ByVal sender As System.Object, _ > > > > ByVal e As System.EventArgs) Handles btnAdd.Click > > > > lblNum.Text = CStr(number) 'These two lines are more > > > > txtEnter.Text = String.Empty 'of trying to clear the > > > > Addition() 'number > > > > End Sub > > > > > > > > Private Sub btnEqual_Click( _ > > > > ByVal sender As Object, _ > > > > ByVal e As System.EventArgs) Handles btnEqual.Click > > > > txtEnter.Text = CStr(answer) > > > > End Sub > > > > Thanks sramey28 > > > > > > > > > > > > > > > > > > > > > > > > '// ======================================================= > > > > Rules : http://ReliableAnswers.com/List/Rules.asp > > > > Home : http://groups.yahoo.com/group/vbHelp/ > > > > ======================================================= > > > > Post : [EMAIL PROTECTED] > > > > Join : [EMAIL PROTECTED] > > > > Leave : [EMAIL PROTECTED] > > > > '// ======================================================= > > > > > > > > > > > > > > > > > > > > Yahoo! Groups Sponsor > > > > > > > > ADVERTISEMENT > > > > > > > > > > > > > > 76/ > > > > > > > > > > D=groups/S=1705115364:HM/EXP=1093987023/A=2319501/R=0/SIG=11tq0u909/* > > > htt > > > > p://www.netflix.com/Default?mqso=60185353&partid=5285298> > click > > > here > > > > > > > > > M=298184.5285298.6392945.3001176/D=group > > > > s/S=:HM/A=2319501/rand=680771713> > > > > > > > > > > > > _____ > > > > > > > > Yahoo! Groups Links > > > > > > > > > > > > * To visit your group on the web, go to: > > > > http://groups.yahoo.com/group/vbhelp/ > > > > > > > > > > > > * To unsubscribe from this group, send an email to: > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > > > > Service . > > > > > > > > > > > > > > > > > > > > [Non-text portions of this message have been removed] > > > > > > > > > > > > > > '// ======================================================= > > Rules : http://ReliableAnswers.com/List/Rules.asp > > Home : http://groups.yahoo.com/group/vbHelp/ > > ======================================================= > > Post : [EMAIL PROTECTED] > > Join : [EMAIL PROTECTED] > > Leave : [EMAIL PROTECTED] > > '// ======================================================= > > > > Yahoo! Groups Links > > > > > > > > > > > > > > > > > > > > > > --------------------------------- > > Do you Yahoo!? > > Win 1 of 4,000 free domain names from Yahoo! Enter now. > > > > [Non-text portions of this message have been removed] > > > > > > '// ======================================================= > Rules : http://ReliableAnswers.com/List/Rules.asp > Home : http://groups.yahoo.com/group/vbHelp/ > ======================================================= > Post : [EMAIL PROTECTED] > Join : [EMAIL PROTECTED] > Leave : [EMAIL PROTECTED] > '// ======================================================= > > > > > Yahoo! Groups Sponsor > > ADVERTISEMENT > > <http://us.ard.yahoo.com/SIG=129nst0ap/M=298184.5285298.6392945.30011 76/ > D=groups/S=1705115364:HM/EXP=1094072519/A=2319501/R=0/SIG=11tq0u909/* htt > p://www.netflix.com/Default?mqso=60185353&partid=5285298> click here > > <http://us.adserver.yahoo.com/l? M=298184.5285298.6392945.3001176/D=group > s/S=:HM/A=2319501/rand=138028638> > > > _____ > > Yahoo! Groups Links > > > * To visit your group on the web, go to: > http://groups.yahoo.com/group/vbhelp/ > > > * To unsubscribe from this group, send an email to: > [EMAIL PROTECTED] > <mailto:[EMAIL PROTECTED]> > > > * Your use of Yahoo! Groups is subject to the Yahoo! Terms of > Service <http://docs.yahoo.com/info/terms/> . > > > > > [Non-text portions of this message have been removed]
------------------------ Yahoo! Groups Sponsor --------------------~--> $9.95 domain names from Yahoo!. Register anything. http://us.click.yahoo.com/J8kdrA/y20IAA/yQLSAA/k7folB/TM --------------------------------------------------------------------~-> '// ======================================================= Rules : http://ReliableAnswers.com/List/Rules.asp Home : http://groups.yahoo.com/group/vbHelp/ ======================================================= Post : [EMAIL PROTECTED] Join : [EMAIL PROTECTED] Leave : [EMAIL PROTECTED] '// ======================================================= Yahoo! Groups Links <*> To visit your group on the web, go to: http://groups.yahoo.com/group/vbhelp/ <*> To unsubscribe from this group, send an email to: [EMAIL PROTECTED] <*> Your use of Yahoo! Groups is subject to: http://docs.yahoo.com/info/terms/
