Калькулятор с одной строкой...

Программирование на Visual Basic, главный форум. Обсуждение тем программирования на VB 1—6.
Даже если вы плохо разбираетесь в VB и программировании вообще — тут вам помогут. В разумных пределах, конечно.
Правила форума
Темы, в которых будет сначала написано «что нужно сделать», а затем просьба «помогите», будут закрыты.
Читайте требования к создаваемым темам.
Gars
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.12.2008 (Чт) 1:21

Калькулятор с одной строкой...

Сообщение Gars » 04.12.2008 (Чт) 1:58

Объясните пожалуста как сделать калькулятор, с одной строкой.
Пасиб!

Wassago
Новичок
Новичок
Аватара пользователя
 
Сообщения: 36
Зарегистрирован: 23.11.2008 (Вс) 21:55
Откуда: Kalimdor

Re: Калькулятор с одной строкой...

Сообщение Wassago » 04.12.2008 (Чт) 2:03

Вот код.
Код: Выделить всё
Dim Numb1 As Long 'Запоминает первое число
Dim Numb2 As Long 'Запоминает второе число
Dim Str As String 'Опознает какое действие выполняетса
Private Sub Form_Load()
Text1.Text = "" 'Очистка текстового поля
End Sub

Private Sub N1_Click()
Text1.Text = Text1.Text + "1" 'При каждом нажатие добавляем 1
End Sub

Private Sub Plus_Click()
Numb1 = Text1.Text
Text1.Text = ""
Str = "Pls"
End Sub

Private Sub Res_Click()
Numb2 = Text1.Text
If Str = "Pls" Then Text1.Text = Numb1 + Numb2
End Sub

Здесь пример на три кнопки: 1(добавляет в Textbox число "1"),плюс"+" и "=".
Положы на форму, 3 кнопки и TextBox.
Я один навсегда,так жесток небесный дар,жизнь забыла, смерть не ждет, у своей черты.
ИзображениеИзображениеИзображение

Gars
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.12.2008 (Чт) 1:21

Re: Калькулятор с одной строкой...

Сообщение Gars » 04.12.2008 (Чт) 2:06

Спасибо все роботает!
А как зделать на "-,\,*"?
Обясни плиз.

Wassago
Новичок
Новичок
Аватара пользователя
 
Сообщения: 36
Зарегистрирован: 23.11.2008 (Вс) 21:55
Откуда: Kalimdor

Re: Калькулятор с одной строкой...

Сообщение Wassago » 04.12.2008 (Чт) 2:10

Все также,тока меняеш -
Код: Выделить всё
Str = "Pls"
и
Код: Выделить всё
If Str = "Pls" Then Text1.Text = Numb1 + Numb2

вместо "+" ставиш например "*".

Лан пожди,ша напишу быстро исходник.
Я один навсегда,так жесток небесный дар,жизнь забыла, смерть не ждет, у своей черты.
ИзображениеИзображениеИзображение

Wassago
Новичок
Новичок
Аватара пользователя
 
Сообщения: 36
Зарегистрирован: 23.11.2008 (Вс) 21:55
Откуда: Kalimdor

Re: Калькулятор с одной строкой...

Сообщение Wassago » 04.12.2008 (Чт) 2:15

Вот:
Вложения
Calc.rar
calc.rar 5kb
(4.12 Кб) Скачиваний: 66
Я один навсегда,так жесток небесный дар,жизнь забыла, смерть не ждет, у своей черты.
ИзображениеИзображениеИзображение

Gars
Начинающий
Начинающий
 
Сообщения: 4
Зарегистрирован: 04.12.2008 (Чт) 1:21

Re: Калькулятор с одной строкой...

Сообщение Gars » 04.12.2008 (Чт) 2:25

Спасибо!Хорошый пример.
А как ты сделал, что в текстбоксе не можно писать?

Wassago
Новичок
Новичок
Аватара пользователя
 
Сообщения: 36
Зарегистрирован: 23.11.2008 (Вс) 21:55
Откуда: Kalimdor

Re: Калькулятор с одной строкой...

Сообщение Wassago » 04.12.2008 (Чт) 2:31

Код: Выделить всё
Text1.Enabled = False
Я один навсегда,так жесток небесный дар,жизнь забыла, смерть не ждет, у своей черты.
ИзображениеИзображениеИзображение

iGrok
Артефакт VBStreets
Артефакт VBStreets
 
Сообщения: 4272
Зарегистрирован: 10.05.2007 (Чт) 16:11
Откуда: Сетевое сознание

Re: Калькулятор с одной строкой...

Сообщение iGrok » 04.12.2008 (Чт) 3:29

Мда.. Я всё понимаю.. Современное образование.. Реформа русского языка.. Опять же, он же самый трудный, после китайского-то..

Но не знать, как пишутся "жи" и "ши".. Это вы меня поразили. Про остальное - молчу.

З.Ы. В калькуляторе нажми два раза минус. Или ещё какую-нить кнопку операции.
label:
cli
jmp label

Viper
Артефакт VBStreets
Артефакт VBStreets
Аватара пользователя
 
Сообщения: 4394
Зарегистрирован: 12.04.2005 (Вт) 17:50
Откуда: Н.Новгород

Re: Калькулятор с одной строкой...

Сообщение Viper » 04.12.2008 (Чт) 8:02

Автор, в "Кирпичах" лежит несколько примеров того, что тебе нужно. Советую вдумчиво изучить код. Ну и русский язык подучить заодно.
Весь мир матрица, а мы в нем потоки байтов!

Денис
Доктор VB наук
Доктор VB наук
Аватара пользователя
 
Сообщения: 2734
Зарегистрирован: 07.11.2006 (Вт) 13:55
Откуда: Ейск, Краснодарский край

Re: Калькулятор с одной строкой...

Сообщение Денис » 04.12.2008 (Чт) 9:00

Gars, если не хочется разбираться с кодом в кирпичах, то вот тебе еще один совет: Сделать арифметические операции индексами.
Код: Выделить всё
private enum Arifmetic
    aPlus = 0 'Сложение
    aMinus = 1 'Вычитание
    aMult = 2 'Умножение
    aDiv = 3 'Деление
end enum


теперь мы можем с легкостью построить ОДНУ функцию для всех действий сразу:
Код: Выделить всё
private function Solve(Value1 as single, Value2 as Single, Oper as Arifmetic) as Single
    select case oper
        case aPlus: solve = value1 + value2
        case aMinus: solve = value1 - value2
        case aMult: solve = value1 * value2
        case aDiv: solve = value1 / value2
    end select
end function


Делаешь массив кнопок. (задаешь свойство Index). вызов этой функции из процедуры массива кнопок будет выглядеть так:
Код: Выделить всё
text3.text = solve ( val( text1.text ) , val( text2.text ) , Index )


Вот и все.
Wasago, ты тоже учись.
Программирование — богоизбранная дисциплина! Если бог и есть, то вселенную он скомпилировал, не иначе.

Wassago
Новичок
Новичок
Аватара пользователя
 
Сообщения: 36
Зарегистрирован: 23.11.2008 (Вс) 21:55
Откуда: Kalimdor

Re: Калькулятор с одной строкой...

Сообщение Wassago » 04.12.2008 (Чт) 20:07

Да это все оч хорошо,но я никак не пойму как роботает "select case".Есе не затруднит обясните подробней.
Я один навсегда,так жесток небесный дар,жизнь забыла, смерть не ждет, у своей черты.
ИзображениеИзображениеИзображение


Вернуться в Visual Basic 1–6

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 80

    TopList