Модераторы: LSD, AntonSaburov
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> jTable!! Как его заполнить, NetBeans 
V
    Опции темы
ReDFighter
Дата 4.12.2010, 19:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.12.2010

Репутация: нет
Всего: нет



Здравствуйте.
Использую NetBeans.
Положил на форму jTable, jTextArea, jButton, jTextField.
Таблица уже заполнена, в ней 2 колонки. И мне нужно чтобы при нажатии кнопки jButton добавлялась новая строка в таблице. Причем значение 1 столбца бралось из jTextField a второго из jTextArea.
Помогите пожалуйста это совершить, а то курсач горит, все уже зделал а это не могу никак. Желательно написать код на эту кнопку. 
Заранее благодарен, и буду еще больше благодарен за код, этого действия.smile 

П.с. Сама таблица типо как словник, 1 столбец слова, 2 описание. 

PM MAIL   Вверх
dorogoyIV
Дата 5.12.2010, 01:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1503
Регистрация: 26.3.2007

Репутация: 36
Всего: 46



хм. для курсовой что то слабовато ты подготовлен. все же элементарно:
Код

import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import javax.swing.table.*;

public class Test extends JFrame
                  implements ActionListener
{
 private JTable table = new JTable(0, 2);
 private JTextArea jta = new JTextArea("JTextArea");
 private JTextField jtf = new JTextField("JTextField");
 private JButton jb = new JButton("insert row");

 public Test()
 {
  setDefaultCloseOperation(3);
  setBounds(100, 100, 400, 300);
  init();
 }

 private void init()
 {
  JPanel north = new JPanel(new BorderLayout());
  north.setPreferredSize(new Dimension(300, 100));
  north.add(jtf, "North");
  north.add(new JScrollPane(jta));
  add(north, "North");

  JScrollPane jsp = new JScrollPane(table);
  jsp.setPreferredSize(new Dimension(300, 100));
  add(jsp);

  add(jb, "South");
  jb.addActionListener(this);
 }

 public void actionPerformed(ActionEvent e)
 {
  insertValues();
 }

 private void insertValues()
 {
  if(getValues() != null)
   ((DefaultTableModel)table.getModel())
         .insertRow(table.getRowCount(), getValues());

  if(jtf.getText().length() > 0  &&
     jta.getText().length() > 0)
  {
   jtf.setText("");
   jta.setText("");
  }
 }

 private Object [] getValues()
 {
  if(jtf.getText().length() == 0 || // &&
     jta.getText().length() == 0)
   return null;
  else
   return new Object [] {jtf.getText(), jta.getText()};
 }

 public static void main(String [] args)
 {
  SwingUtilities.invokeLater(new Runnable()
  {
   public void run()
   {
    new Test().setVisible(true);
   }
  });
 }
}

PM MAIL   Вверх
mstalker26
Дата 5.12.2010, 02:20 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


Профиль
Группа: Участник
Сообщений: 206
Регистрация: 4.7.2009

Репутация: 3
Всего: 11



Код

import java.awt.Container;
import java.awt.GridBagConstraints;
import java.awt.GridBagLayout;
import java.awt.Insets;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JTable;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.SwingUtilities;
import javax.swing.table.DefaultTableModel;


public class JTableExample extends JFrame {
  // fields
  private final static long serialVersionUID = 1L;
  private JTable            tableMain;
  private DefaultTableModel dtm;
  private JTextField        tfForColumnOne;
  private JTextArea         taForColumnTwo;
  private JButton           btnAdd;
  
  // constructors
  public JTableExample() {
    super("JTableExapmle");
    initComponents();
  }
  
  // methods
  private void initComponents() {
    // create of all objects
    dtm = new DefaultTableModel();
    dtm.setColumnIdentifiers(new String[] {"Column One", "Column Two"});
    
    tableMain = new JTable(dtm);
    tfForColumnOne = new JTextField();
    taForColumnTwo = new JTextArea();
    btnAdd = new JButton("Add");
    
    setTitle("JTable Example");
    setSize(500, 300);
    setLocationRelativeTo(null);
    setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
    Container content = getContentPane();
    setLayout(new GridBagLayout());
    
    GridBagConstraints gbc = new GridBagConstraints();
    
    // tfForColumnOne
    tfForColumnOne.setColumns(10);
    gbc.weightx = 1;
    gbc.weighty = 0;
    gbc.gridx = 0;
    gbc.gridy = 0;
    gbc.gridwidth = 1;
    gbc.gridheight = 1;
    gbc.ipady = 4;
    gbc.insets = new Insets(2, 6, 2, 2);
    gbc.fill = GridBagConstraints.HORIZONTAL;
    content.add(tfForColumnOne, gbc);
    
    // taForColumnTwo
    taForColumnTwo.setAutoscrolls(true);
    taForColumnTwo.setWrapStyleWord(true);
    taForColumnTwo.setLineWrap(true);
    gbc.weightx = 2;
    gbc.weighty = 0;
    gbc.gridx = 1;
    gbc.gridy = 0;
    gbc.gridwidth = 1;
    gbc.gridheight = 1;
    gbc.ipady = 4;
    gbc.insets = new Insets(2, 2, 2, 6);
    gbc.fill = GridBagConstraints.HORIZONTAL;
    content.add(taForColumnTwo, gbc);
    
    // btnAdd
    btnAdd.addActionListener(addTextToTable());
    gbc.weightx = 0;
    gbc.weighty = 0;
    gbc.gridx = 0;
    gbc.gridy = 1;
    gbc.gridwidth = 2;
    gbc.gridheight = 1;
    gbc.insets = new Insets(2, 6, 2, 6);
    gbc.fill = GridBagConstraints.HORIZONTAL;
    content.add(btnAdd, gbc);
    
    // tableMain
    gbc.weightx = 0;
    gbc.weighty = 3;
    gbc.gridx = 0;
    gbc.gridy = 2;
    gbc.gridwidth = 2;
    gbc.gridheight = 2;
    gbc.insets = new Insets(2, 6, 2, 6);
    gbc.fill = GridBagConstraints.BOTH;
    content.add(tableMain, gbc);
  }
  
  private ActionListener addTextToTable() {
    return new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent ae) {
        if (!tfForColumnOne.getText().equals("") && !taForColumnTwo.getText().equals("")) {
          dtm.addRow(new String[] {tfForColumnOne.getText().trim(),
                                   taForColumnTwo.getText().trim()});
        }
      }};
  }
  
  public static void main(String[] args) {
    SwingUtilities.invokeLater(new Runnable() {
      @Override
      public void run() {
        new JTableExample().setVisible(true);
      }
    });
  }
}



P.S.  Чёрт, забыл f5 перед отправкой нажать smile.

Это сообщение отредактировал(а) mstalker26 - 5.12.2010, 02:21
--------------------
Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
PM   Вверх
ReDFighter
Дата 5.12.2010, 02:51 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 2
Регистрация: 4.12.2010

Репутация: нет
Всего: нет



Цитата(dorogoyIV @  5.12.2010,  01:01 Найти цитируемый пост)
хм. для курсовой что то слабовато ты подготовлен. все же элементарно:

нет я то всю курсовую уже зделал вот с этой кнопкой все меня морочило.
Но все ровно спасибо.

PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Java"
LSD   AntonSaburov
powerOn   jk1
  • Прежде, чем задать вопрос, прочтите это!
  • Книги по Java собираются здесь.
  • Документация и ресурсы по Java находятся здесь.
  • Используйте теги [code=java][/code] для подсветки кода. Используйтe чекбокс "транслит", если у Вас нет русских шрифтов.
  • Помечайте свой вопрос как решённый, если на него получен ответ. Ссылка "Пометить как решённый" находится над первым постом.
  • Действия модераторов можно обсудить здесь.
  • FAQ раздела лежит здесь.

Если Вам помогли, и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, LSD, AntonSaburov, powerOn, jk1.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Java: GUI и Java FX приложения | Следующая тема »


 




[ Время генерации скрипта: 0.0476 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.