visual basic калькулятор
По просьбе DenJoy» я сегодня мы будем делать калькулятор. Это наверно самое простое, что может быть в Basic» е =), т.к. там используются обычные знаки. Конечно это все легко, но я понимаю DenJoy , когда он не знает, как это делать. Я сам очень недавно был таким. Все хватит ! Приступаем к программированию. Для начала посмотрим вид калькулятора, он должен быть примерно такой:
В верхнее левое текстовое поле будут писаться цифры. В правое — выбраный знак. Ну и в низу кнопки с цифрами.
1. Два текстовых поля с именами Text1 и Text2 . У них свойство Enabled поставьте равным False , чтобы их нельзя было изменять.
2. Пятнадцать кнопок с их стандартными номерами. Но предупреждаю . У меня они
идут не попорядку, так что лучшескачайте мой калькулятор с исходниками, чтобы посмотреть какой номер у каждой кнопки!
Теперь пишем код:
» Вводим две переменные, для присвоения им значений, которые мы введем на калькуляторе
Dim a As String
Dim b As String
Private Sub Command1_Click()
» При нажа на кнопку с цифрой «1», в текстовом поле появится «1»
Text1.Text = Text1.Text & «1»
End Sub
Private Sub Command11_Click()
» После нажатия на «*», присваиваем переменной » a » число из текстового поля №1
» В маленькое текстовое поле, пишем знак «*»
Text2.Text = «*»
» Отчищаем тексотовое поле №1
Text1.Text = «»
End Sub
Private Sub Command12_Click()
» При нажатии на «=», присваиваем переменной » b » второе значение, но тоже из текстового поля №1
b = Text1.Text
» Смотрим, какой знак в текстовом поле №2 и делаем нужное действие
If Text2.Text = «*» Then
Text1.Text = a * b
End If
If Text2.Text = «/» Then
Text1.Text = a / b
End If
If Text2.Text = «-» Then
Text1.Text = a — b
End If
End Sub
Private Sub Command13_Click()
» Отчищаем все текстовые поля
Text1.Text = «»
Text2.Text = «»
End Sub
Private Sub Command14_Click()
» После нажатия на «-«, присваиваем переменной » a » число из текстового поля №1
a = Text1.Text
Text2.Text = «-«
Text1.Text = «»
End Sub
Private Sub Command15_Click()
» После нажатия на » / «, присваиваем переменной » a » число из текстового поля №1
a = Text1.Text
Text2.Text = «/»
Text1.Text = «»
End Sub
» Все что ниже можно откоментировать одинаково: при нажатии на кнопку с определенной цифрой, она отабражается в текстовом поле №1
Private Sub Command2_Click()
Text1.Text = Text1.Text & «5»
End Sub
Private Sub Command3_Click()
Text1.Text = Text1.Text & «4»
End Sub
Private Sub Command4_Click()
Text1.Text = Text1.Text & «3»
End Sub
Private Sub Command5_Click()
Text1.Text = Text1.Text & «2»
End Sub
Private Sub Command6_Click()
Text1.Text = Text1.Text & «6»
End Sub
Private Sub Command7_Click()
Text1.Text = Text1.Text & «0»
End Sub
Private Sub Command8_Click()
Text1.Text = Text1.Text & «9»
End Sub
Private Sub Command9_Click()
Text1.Text = Text1.Text & «8»
End Sub
Private Sub Command10_Click()
Text1.Text = Text1.Text & «7»
End Sub
Вот, в принципе, и все. Калькулятор готов к использованию. Я сделал его минут за 5-7. Так что можете поэкспериментировать, даже если у вас очень мало времени =). Еще раз настоятельно рекомендаюскачать мой калькулятор, чтобы знать какая кнопка, что обозначает.
Как создать простой калькулятор в Visual Basic 6.0
wikiHow работает по принципу вики, а это значит, что многие наши статьи написаны несколькими авторами. При создании этой статьи над ее редактированием и улучшением работали, в том числе анонимно, 12 человек(а).
Количество просмотров этой статьи: 77 140.
В этой статье:
Visual Basic 6.0 является языком программирования, разработанный Microsoft, который может легко изучить и использовать новичок, а также опытные программисты. Хотя он больше не поддерживается корпорацией Microsoft, тысячи приложений еще работают на нем и многое другое программное обеспечение все еще разрабатывается. Это руководство покажет вам, как создать простой калькулятор в Visual Basic 6.0.
- Вы также можете выбрать проект VB Enterprise Edition Project, который даст вам намного больше инструментов для работы. Для начинающего программиста предлагается использовать Standard EXE Project.
- Слева от окна находится панель инструментов. Панель инструментов содержит различные определенные заранее элементы любой программы. Вы можете перетащить эти элементы на форму.
- В нижней правой части окна находится макет формы. Это определяет, где ваша программа будет отображаться на экране после того, как проект будет завершен и выполнен.
- Посередине правее находится окно свойств, которые определяют свойство любого элемента, выбранного в форме. Вы можете изменять различные свойства, используя его. Если не выбран ни один элемент, оно отображает свойства формы.
- В правом верхнем углу находится Project Explorer. Оно показывает различные конструкции, формы, которые включены в проект.
- Если любой из этих полей отсутствует, вы можете добавить их, нажав на кнопку «View» на панели меню Menu.
- Надпись на метке можно изменить с помощью окна свойств.
Создайте текстовое поле справа от первой метки. Удалите текст, который появляется внутри текстового поля, изменив пустующее поле «Text» в окне свойств.
Создайте еще одну метку и измените заголовок на «Enter second number», и создайте еще одно текстовое поле для нее справа.
Перетащите и создайте четыре командные кнопки ниже этих двух меток. Измените заголовок этих командных кнопок на «Add», «Subtract», «Multiply», «Divide» соответственно.
Создайте еще одну метку с надписью «Result» и текстовое поле справа от нее под кнопками четырех команд. Это текстовое поле будет использоваться для отображения результата. При этом ваш проект будет завершен.
- Нажмите на список в верхнем левом углу окна кодирования. Один за другим нажимайте на все команды (Command1, Command2, и т.д.), таким образом план кодирования из них будет виден вам в вашем окне кодирования.
- Dim a, b, r as Integer
- a является величиной, введенной в первом текстовом поле, b является величиной , введенной во втором текстовом поле и r является результатом. Вы можете использовать любые другие переменные тоже.
- Private Sub Command1_Click()
a = Val(Text1.Text)
b = Val(Text2.Text)
r = a + b
Text3.Text = r
End Sub
- Private Sub Command2_Click()
a = Val(Text1.Text)
b = Val(Text2.Text)
r = a — b
Text3.Text = r
End Sub
- Private Sub Command3_Click()
a = Val(Text1.Text)
b = Val(Text2.Text)
r = a * b
Text3.Text = r
End Sub
- Private Sub Command4_Click()
a = Val(Text1.Text)
b = Val(Text2.Text)
r = a / b
Text3.Text = r
End Sub
- Протестируйте все команды и посмотрите, работает ли ваша программа.
Сохраните проект и свою форму. Создайте свой проект и сохраните его в виде .exe файла на своем компьютере; запустите его, когда вы хотите!
Как сделать калькулятор в visual basic
Лабораторная работа по Microsoft Visual Basic
Проект «Инженерный калькулятор»
1. Запустите программу Microsoft Visual Basic [Пуск — Все программы — Microsoft Visual Basic 6.0 — Microsoft Visual Basic 6.0]. Откроется окно программы:
На открывшейся диалоговой панели выбрать тип создаваемого проекта STANDART.EXE и нажать кнопку открыть. Появиться следующее окно интегрированной среды разработки Visual Basic:
- Поместите на форму три текстовых поля (TextBox) и пять кнопок (CommandButton). Поменять следующие свойства:
- Первому текстовому полю присвоить имя txt1 (в свойствах пункт Name) и убрать надпись внутри текстового поля (в свойствах очистить содержимое пункта Text). Для свойства Alignment установите значение Right Justufy (выравнивание по правому краю). Это поле отвечает за первое введённое число.
- Второму текстовому полю присвоить имя txt2 (в свойствах пункт Name) и убрать надпись внутри текстового поля (в свойствах очистить содержимое пункта Text). Для свойства Alignment установите значение Right Justufy (выравнивание по правому краю). Это поле отвечает за второе введённое число.
- Третьему текстовому полю присвоить имя txt3 (в свойствах пункт Name) и убрать надпись внутри текстового поля (в свойствах очистить содержимое пункта Text). Для свойства Alignment установите значение Right Justufy (выравнивание по правому краю). Это поле отвечает за выведенный результат.
- Первой кнопке присвоить имя cmdPlus (в свойствах пункт Name) и поменять надпись на кнопке (в свойствах пункт Caption ввести +). Это кнопка отвечает за сложение чисел.
- Второй кнопке присвоить имя cmdMinus (в свойствах пункт Name) и поменять надпись на кнопке (в свойствах пункт Caption ввести -). Это кнопка отвечает за вычитание чисел.
- Третьей кнопке присвоить имя cmdUmn (в свойствах пункт Name) и поменять надпись на кнопке (в свойствах пункт Caption ввести *). Это кнопка отвечает за умножение чисел.
- Четвертой кнопке присвоить имя cmdDelen (в свойствах пункт Name) и поменять надпись на кнопке (в свойствах пункт Caption ввести /). Это кнопка отвечает за деление чисел.
- Пятой кнопке присвоить имя cmdExit (в свойствах пункт Name) и поменять надпись на кнопке (в свойствах пункт Caption ввести ВЫХОД). Это кнопка отвечает за завершение работы программы.
- При двойном нажатии на кнопку CmdPlus открывается событийная процедура сложения CmdPlus_Сlic, которая должна изменять значение свойства Text текстового поля txt3 так, чтобы оно являлось суммой числовых значений свойства Text текстовых полей txt1 и txt2. Для преобразования строковых значений, вводимых в текстовые поля, в десятичные числа, воспользуемся функцией Val. Код событийной процедуры будет следующий:
txt3.Text = Val (txt1.Text) + Val (txt2.Text)
- Событийные процедуры вычитания, умножения и деления создаются аналогично:
txt3.Text = Val (txt1.Text) — Val (txt2.Text) //для кнопки cmdMinus
txt3.Text = Val (txt1.Text) * Val (txt2.Text) //для кнопки cmdUmn
txt3.Text = Val (txt1.Text) / Val (txt2.Text) //для кнопки cmdDelen
- Обработаем событийную процедуру на выход. Нажмем два раза на кнопке ВЫХОД и наберем следующий код:
- Запустите свой проект и проверьте, чтобы программа работала корректно. Для этого вверху программы нажмите на кнопочку play
Растяните открывшееся окно, потянув за нижний правый угол.
- Продолжаем работу. Добавьте на форму шесть кнопок cmdSin, cmdCos, cmdTan, cmdSqr, cmdSt и cmdLog. Это кнопки которые отвечают соответственно за вычисление синуса, косинуса, тангенса, квадратного корня, возведения в степень и вычисление натурального логарифма. (Кто забыл где и как меняются надписи и имена кнопок см пункт 2).
- Для каждой из этих кнопок создайте событийные процедуры, реализующие вычисление соответствующих функций: синуса, косинуса, тангенса, квадратного корня, возведения в степень и натурального логарифма.
- Например,
- для возведения в степень событийная процедура cmdSt_Click() примет вид:
txt3.Text = Val(txt1.Text) ^ Val(txt2.Text)
- для вычисления косинуса событийная процедура cmdCos_Click() примет вид:
- для вычисления синуса событийная процедура cmdSin_Click() примет вид:
- для вычисления тангенса событийная процедура cmdTan_Click() примет вид:
- для вычисления квадратного корня событийная процедура cmdSqr_Click() примет вид:
- для вычисления логарифма событийная процедура cmdLog_Click() примет вид:
- Проверить работу проекта.
- Продолжаем работу. Добавим новые опции в наш калькулятор. Необходимо, чтобы появилась возможность переводить целые числа из десятичной системы счисления в восьмеричную и обратно – из восьмеричной и шестнадцатеричной в десятичную.
Для этого добавим на форму три текстовых поля (txtDec, txtOct, txtHex) для ввода и вывода чисел, четыре кнопки (cmdDecOct, cmdDecHex, cmdOctDec, cmdHexDec) для создания событийных процедур, реализующих перевод чисел, и три метки (Label) для вывода поясняющих надписей над текстовыми полями. Получается следующее:
- Создайте событийную процедуру cmdOctDec_Click(), реализующую перевод чисел из восьмеричной системы в десятичную. Для этого к вводимым в текстовые поля txtOct и txtHex в строковой форме числам добавим восьмеричную и шестнадцатеричную приставки “&O” или “&H” с помощью операции конкатенации (соединения) строк. Полученное восьмеричное или шестнадцатеричное число в строковой форме переведем в десятичную числовую форму с помощью функции Val:
txtDec.Text = Val («&O»+txtOct.Text)
- Создайте событийную процедуру cmdHexDec_Click(), реализующую перевод чисел из шестнадцатеричной системы в десятичную^
txtDec.Text = Val(«&H» + txtHex.Text)
- Введенные в текстовое поле txtDec числа будем переводить сначала из строковой формы в числовую с помощью функции Val, а затем из десятичной числовой в строковую восьмеричную или шестнадцатеричную с помощью функций Oct или Hex.
- Создать событийную процедуру cmdDecHex_Click(), реализующую перевод чисел из десятичной системы в шестнадцатеричную:
- Создать событийную процедуру cmdDecOct_Click(), реализующую перевод чисел из десятичной системы в восьмеричную:
- Сохраните свой проект под названием «Инженерный калькулятор». Для этого выбрать [Файл – Сохранить проект как].
Как сделать калькулятор в Visual Basic.
В данной статье я расскажу вам как сделать проект «Обычный калькулятор» . Основные математические действия будут производиться над целыми десятичными числами. Но нам будет необходимо преобразовать строковое значение с число. Это можно сделать с помощью функции Val, аргументом которой является строка, а значение — число: Val (Строка$).
Для создания графического интерфейса на форме размести пять кнопок с названиями сложение, вычитание, деление, умножение, выход; три текстовых поля (два для ввода и одно для вывода) .
Перед тем как начать основную работу можно убедиться, что калькулятор не будет складывать числа более 16 знаков. Для этого необходимо в процедуре Text1_Change и Text2_Change ввести такой код:
Private Sub Text1_Change () ‘Происходит при изменении текстового поля
If Len (Text1.Text)>16 Then MsgBox “Много знаков” ‘Если Text1>16, то выводим сообщение
End SubPrivate Sub Text2_Change ()
If Len (Text2.Text)>16 Then MsgBox “Много знаков”
End SubТеперь напишем код для сложения, вычитания и умножения:
Private Sub Command1_Click () ‘Сложение
Text3.Text=Val (Text1.Text) + Val (Text2.Text)
End SubPrivate Sub Command2_Click () ‘Вычитание
Text3.Text=Val (Text1.Text) – Val (Text2.Text)
End SubPrivate Sub Command3_Click () ‘Умножение
Text3.Text=Val (Text1.Text) * Val (Text2.Text)
End SubС кодом для деления придётся немного пораздумать. Когда во втором текстовом поле будет ноль или там не будет текста, то будут выскакивать ошибка. Для её предотвращения придётся создать условие:
Private Sub Command4_Click () ‘Деление
If Text2.Text =”” Then MsgBox “Деление на ноль”
If Text2.Text = 0 Then MsgBox “Деление на ноль”
If Text2.Text<>”” Then Text3.Text=Val(Text1.Text)/Val(Text2.Text)
If Text2.Text<>0 Then Text3.Text=Val(Text1.Text)/Val(Text2.Text)
End SubОсталось написать процедуру для кнопки «Выход» :
Private Sub Command5_Click () ‘Выход
End
End SubДля создания других операций с числами можно воспользоваться обозначениями функций:
Sqr (число) – служит для извлечения квадратного корня
Например: Sqr (16) = 4Основание ^ степень – возведение числа в степень
Например: 6 ^ 2 = 36Sin (число) – синус числа
Например: Sin (60) = -0, 304810621102217Cos (число) – косинус числа
Например: Cos (60) = -0, 952412980415156Tan (число) –тангенс числа
Например: Tan (60) = 0,320040389379563Элеонора ФинкельштейнУченик (130) 8 лет назад
Спасибо Вам огромнейшее, очень помогли! Статья информативная и удобная для использования! СПАСИБО!Dim op As String
Dim num1 As Integer
Dim num2 As IntegerPrivate Sub Command1_Click()
Text1.Text = «»
End SubPrivate Sub Command10_Click()
Text1.Text = Text1.Text + «9»
End SubPrivate Sub Command11_Click(Index As Integer)
Text1.Text = Text1.Text + «0»
End SubPrivate Sub Command12_Click(Index As Integer)
num1 = Text1.Text
Text1.Text = «»
op = «+»
End SubPrivate Sub Command13_Click(Index As Integer)
num1 = Text1.Text
Text1.Text = «»
op = «-»
End SubPrivate Sub Command14_Click(Index As Integer)
num1 = Text1.Text
Text1.Text = «»
op = «/»
End SubPrivate Sub Command15_Click(Index As Integer)
num1 = Text1.Text
Text1.Text = «»
op = «*»
End SubPrivate Sub Command16_Click(Index As Integer)
num2 = Text1.Text
If op = «+» Then
Text1.Text = num1 + num2
ElseIf op = «-» Then
Text1.Text = num1 — num2
ElseIf op = «*» Then
Text1.Text = num1 * num2
ElseIf op = «/» Then
Text1.Text = num1 / num2
End If
End SubPrivate Sub Command17_Click()
End
End SubPrivate Sub Command2_Click()
Text1.Text = Text1.Text + «1»
End SubPrivate Sub Command3_Click()
Text1.Text = Text1.Text + «2»
End SubPrivate Sub Command4_Click()
Text1.Text = Text1.Text + «3»
End SubPrivate Sub Command5_Click()
Text1.Text = Text1.Text + «4»
End SubPrivate Sub Command6_Click()
Text1.Text = Text1.Text + «5»
End SubPrivate Sub Command7_Click()
Text1.Text = Text1.Text + «6»
End SubPrivate Sub Command8_Click()
Text1.Text = Text1.Text + «7»
End SubPrivate Sub Command9_Click()
Text1.Text = Text1.Text + «8»
End SubПредлагаю более компактный вариант на Visual Basic 2015 (форма, кнопки b0. b9,zap -имя кнопок запятая, plus-имя кнопки плюс, del-имя кнопки делить, richtextbox1-окно ввода)
Public Class Калькулятор
Dim k As Double : Dim d As Integer
Private Sub обработчик (sender As Object, e As EventArgs) Handles b0.Click, b1.Click, b2.Click, b3.Click, b4.Click, b5.Click, b6.Click, b7.Click, b8.Click, b9.Click, plus.Click, zap.Click, clear.Click
Dim b As Button = sender ‘получить событие нажатой кнопки
If RichTextBox1.Text = «0» Then
RichTextBox1.Text = b.Text
Else
If RichTextBox1.Text = «,» And RichTextBox1.Text = «» Then GoTo m1
RichTextBox1.Text = RichTextBox1.Text + b.Text
If RichTextBox1.Text = «» Then GoTo m1 ‘выход если нет числа
If b.Text = «+» Then d = 1 : k = RichTextBox1.Text : RichTextBox1.Text = «» ‘сложение
If b.Text = «C» Then k = 0 : RichTextBox1.Text = «» ‘сброс
End If
m1: End Sub
Private Sub Вычитание (sender As Object, e As EventArgs) Handles minus.Click
If RichTextBox1.Text = «» Then GoTo m1
d = 2 : k = RichTextBox1.Text : RichTextBox1.Text = «» ‘вычитание
m1: End Sub
Private Sub Умножение (sender As Object, e As EventArgs) Handles ymn.Click
If RichTextBox1.Text = «» Then GoTo m1
d = 3 : k = RichTextBox1.Text : RichTextBox1.Text = «» ‘умножение
m1: End Sub
Private Sub Деление (sender As Object, e As EventArgs) Handles del.Click
If RichTextBox1.Text = «» Then GoTo m1
d = 4 : k = RichTextBox1.Text : RichTextBox1.Text = «» ‘деление
m1: End Sub
Private Sub Ответ (sender As Object, e As EventArgs) Handles Равно. Click
If RichTextBox1.Text = «» Then GoTo m1 ‘выход если нет числа
Select Case d
Case Is = 1 : RichTextBox1.Text = k + RichTextBox1.Text ‘Сложение
Case Is = 2 : RichTextBox1.Text = k — RichTextBox1.Text ‘вычитание
Case Is = 3 : RichTextBox1.Text = k * RichTextBox1.Text ‘умножение
Case Is = 4 : If RichTextBox1.Text <> «» And RichTextBox1.Text <> «0» Then RichTextBox1.Text = k / RichTextBox1.Text ‘деление
End Select
m1: End Sub
End Class