На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! Следующие правила действуют в данном разделе в дополнение к общим Правилам Форума
1. Здесь обсуждается Java, а не JavaScript! Огромная просьба, по вопросам, связанным с JavaScript, SSI и им подобным обращаться в раздел WWW Masters или, на крайний случай, в Многошум.
2. В случае, если у вас возникают сомнения, в каком разделе следует задать свой вопрос, помещайте его в корневую ветку форума Java. В случае необходимости, он будет перемещен модераторами (с сохранением ссылки в корневом разделе).

3. Запрещается создавать темы с просьбой выполнить какую-то работу за автора темы. Форум является средством общения и общего поиска решения. Вашу работу за Вас никто выполнять не будет.
4. Не рекомендуется создавать несколько несвязанных вопросов в одной теме. Пожалуйста, создавайте по одной теме на вопрос.
Модераторы: dark_barker, wind
  
> Задачка на создание простого GUI
    Приветствую. Пришла пора изучать GUI. Решаем задачку. Подскажите кто чем может.

    Задача: Создать окно с полями ввода, куда будет вводиться текст; Местом для картинки; Кнопкой, при нажатии на которую будет открываться второе окно.
    Вот такая нужна картинка:

    user posted image

    Код вот такой пока: // Окно создаётся, но расположение элементов сильно хромает.
    Что нужно ещё добавить чтобы получилось как на картинке к заданию?

    ExpandedWrap disabled
      import javax.swing.*;
      import java.awt.FlowLayout;
      import java.awt.event.ActionEvent;
      import java.awt.event.ActionListener;
       
      public class View1 extends JFrame
      {
       
          public static void main(String[] args) {
              new View1();
          }
       
          //  CONSTRUCTOR
          public View1()
          {
       
              super("View 1");
              setDefaultCloseOperation(EXIT_ON_CLOSE);
              setLayout(new FlowLayout());
       
              // START
              JLabel labelStart = new JLabel("Введите данные: НАЧАЛО МАРШРУТА");
              add(labelStart);
       
              JTextField textFieldStartStreet = new JTextField();
              add(textFieldStartStreet);
       
              JTextField textFieldStartHouse = new JTextField();
              add(textFieldStartHouse);
       
              JTextField textFieldStartIndex = new JTextField();
              add(textFieldStartIndex);
       
              JTextField textFieldStartCity = new JTextField();
              add(textFieldStartCity);
       
              // END
              JLabel labelEnd = new JLabel("Введите данные: КОНЕЦ МАРШРУТА");
              add(labelEnd);
       
              JTextField textFieldEndStreet = new JTextField();
              add(textFieldEndStreet);
       
              JTextField textFieldEndHouse = new JTextField();
              add(textFieldEndHouse);
       
              JTextField textFieldEndIndex = new JTextField();
              add(textFieldEndIndex);
       
              JTextField textFieldEndCity = new JTextField();
              add(textFieldEndCity);
       
       
              JButton button = new JButton("Сохранить");
              add(button);
       
              // ADD LISTENERS TO COMPONENTS
              button.addActionListener(new MyActionListener1());
       
              // ENDCONFIGURATION AFTER VIEW IST BUILD
              setLocation(100, 100);
              setSize(700, 700);
              setVisible(true);
       
          }
       
          public class MyActionListener1 implements ActionListener
          {
              @Override
              public void actionPerformed(ActionEvent arg0)
              {
                  new View2();
              }
          }
       
      }
      заменить FlowLayout на, например, GridBagLayout
      пример использования GridBagLayout: http://www.frolov-lib.ru/programming/javas...es/vol5/vol5_5/
        Если хотите расположить элемент во фрейме с точностью до пикселя, можно применить
        ExpandedWrap disabled
           setLayout(null);
          // далее для каждого объекта фрейма вызвать  метод
           setBounds(x,y,width,height); // где x,y начальная точка а width,height размер


        Этот вариант самый грубый
        Сообщение отредактировано: sair -
        0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
        0 пользователей:


        Рейтинг@Mail.ru
        [ Script execution time: 0,0228 ]   [ 15 queries used ]   [ Generated: 28.03.24, 20:24 GMT ]