Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Java программирование > Общие вопросы по Java, Java SE, Kotlin
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 12.03.2015, 23:01   #1
jeys
Пользователь
 
Аватар для jeys
 
Регистрация: 02.02.2015
Сообщений: 24
По умолчанию как сделать чтобы можно было вводить любое число ?

import javax.swing.JFrame;

public class jey {
public static void main(String args[]){
rieder r = new rieder("калькулятор");
r.setVisible(true);
r.setDefaultCloseOperation(JFrame.E XIT_ON_CLOSE);
r.setSize(250, 300);
r.setResizable(false);
r.setLocationRelativeTo(null);

}
}


//////////////////////
следующий класс
/////////////////////////


import javax.swing.*;

import java.awt.*;
import java.awt.event.*;

public class rieder extends JFrame{

JButton b1, b2, b3, b4, b5, b6, b7, b8, b9, b10, b11, b12, b13, b14, b15;
JLabel l1, l2, l3, l4;
JTextField t1, t2;

int i, k;
String a, b;
eHandler Handler = new eHandler();


public rieder(String s){
super(s);
setLayout(new FlowLayout());

//l2 = new JLabel("введите второе число:");

//l1 = new JLabel("введите первое число:");
b2 = new JButton(" посчитать ");
b1 = new JButton(" Очистить ");
//l4 = new JLabel("2число=");
l3 = new JLabel("");

b3 = new JButton("1");
b4 = new JButton("2");
b5 = new JButton("3");
b6 = new JButton("4");
b7 = new JButton("5");
b8 = new JButton("6");
b9 = new JButton("7");
b10 = new JButton("8");
b11 = new JButton("9");
b12 = new JButton("10");
b13 = new JButton("11");
b14 = new JButton("12");
b15 = new JButton("13");

t1 = new JTextField(15);
//t2 = new JTextField(10);




add(t1);
add(b1);
add(b2);
//add(l1);

//add(l2);
//add(t2);
add(l3);
//add(l4);
add(b3);// для калькултора
add(b4);
add(b5);
add(b6);
add(b7);
add(b8);
add(b9);
add(b10);
add(b11);
add(b12);
add(b13);
add(b14);
add(b15);
b2.addActionListener(Handler);
b1.addActionListener(Handler);
b3.addActionListener(Handler);
b4.addActionListener(Handler);
b5.addActionListener(Handler);
b6.addActionListener(Handler);
b7.addActionListener(Handler);
b8.addActionListener(Handler);
b9.addActionListener(Handler);
b10.addActionListener(Handler);
b11.addActionListener(Handler);
b12.addActionListener(Handler);
b13.addActionListener(Handler);
b14.addActionListener(Handler);
b15.addActionListener(Handler);

}

public class eHandler implements ActionListener{ // слушатель

public void actionPerformed(ActionEvent e) { // действие выполнено
try{
if(e.getSource()==b2){

i = Integer.parseInt(t1.getText());
//k = Integer.parseInt(t1.getText());
i++;
//k++;
a = "ваше первое чисо теперь " + i;
//b = "ваше второе чисо теперь " + k;
l3.setText(a);
//l4.setText(b);
}
if(e.getSource()==b1){
t1.setText(null);
// t2.setText(null);
l3.setText(null);
//l4.setText(null);
}

if(e.getSource()==b3){
t1.setText("1");

}
if(e.getSource()==b4){
t1.setText("2");

}
if(e.getSource()==b5){
t1.setText("1 23");
}
if(e.getSource()==b6){
t1.setText("4");
}
if(e.getSource()==b7){
t1.setText("5");
}
if(e.getSource()==b8){
t1.setText("6");
}
if(e.getSource()==b9){
t1.setText("7");
}
if(e.getSource()==b10){
t1.setText("8");
}
if(e.getSource()==b11){
t1.setText("9");
}
if(e.getSource()==b12){
t1.setText("0");
}
if(e.getSource()==b13){
t1.setText("");
}
if(e.getSource()==b14){
t1.setText("12");
}
if(e.getSource()==b15){
t1.setText("");
}
}catch (Exception ex){ JOptionPane.showMessageDialog(null, "ведите в поле число");}

}

}



}

Делаю калькулятор вводит только то число которое ввожу а предыдущее стирает,
КАК СДЕЛАТЬ ЧТОБЫ МОЖНО БЫЛО НАПРИМЕР ВВЕСТИ ЧИСЛО 31569715 И Т.Д ??????
СПАСИБО.
jeys вне форума Ответить с цитированием
Старый 15.03.2015, 21:24   #2
jeys
Пользователь
 
Аватар для jeys
 
Регистрация: 02.02.2015
Сообщений: 24
По умолчанию

тут походу такие программисты, что испугались простого кода)))))))))))))))))))))))))))
jeys вне форума Ответить с цитированием
Старый 15.03.2015, 22:43   #3
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от jeys Посмотреть сообщение
тут походу такие программисты, что испугались простого кода)))))))))))))))))))))))))))
Начнём с того, что на форуме (как на этом, так и практически на любом другом) никто никому не обязан. Вся помощь оказывается исключительно на добровольной основе.
Что касается кода. Нужно выделять код кнопкой #, а ещё лучше вдобавок его форматировать и комментировать.
Цитата:
Сообщение от jeys Посмотреть сообщение
Код:
b1 = new JButton(" Очистить ");
Кроме того, открою Вам секрет. В Java идентификаторы могут иметь осмысленные названия, которые отражают их предназначение.
А, так, естественно, Вам самому сложно понять то, что Вы написали. Не говоря уже о том, каково читать и разбирать оформленный таким образом код другим.
Streletz вне форума Ответить с цитированием
Старый 11.04.2015, 11:34   #4
Bugrimov
C/C++, Java
Участник клуба
 
Аватар для Bugrimov
 
Регистрация: 28.03.2012
Сообщений: 1,680
По умолчанию

Код действительно трудно поддается чтению.
"Keep it simple" - придерживайтесь простоты!
Уильям Оккам - "Не следует множить сущее без необходимости"
Сложность - враг простоты и удобства!
Bugrimov вне форума Ответить с цитированием
Старый 11.04.2015, 13:47   #5
Streletz
Старожил
 
Регистрация: 03.01.2014
Сообщений: 2,870
По умолчанию

Цитата:
Сообщение от Bugrimov Посмотреть сообщение
Код действительно трудно поддается чтению.
Особенно, если учесть, что он не выделен тегами.
Streletz вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите пожалуйста, как сделать, чтобы в Edit можно было ввести цифры от 0 до 12. ciev Общие вопросы Delphi 6 14.05.2016 17:45
Как в программе сделать темы оформления и чтобы их можно было изменять?! max_praime C++ Builder 2 14.04.2014 08:15
Ввод - сделать так, чтобы в Edit можно было вводить только цифры, или на оборот, только буквы BastAngel Общие вопросы Delphi 7 27.04.2012 01:15
Какую надо задать маску для MaskEdit, чтобы можно было вводить только цифры (притом с запятой)? Polotenchik Компоненты Delphi 24 17.07.2009 21:29
Как сделать так, чтобы форму можно было тостать не только за заголовок? Никки Общие вопросы Delphi 1 04.09.2008 14:34