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

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> как реализовать метод addRow 
V
    Опции темы
xber9
Дата 25.11.2007, 14:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



вот намисал маленкую модель таблици
Код

/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package MysqlAndJava;
import javax.swing.table.*;

 class MyTableModel
    extends AbstractTableModel {
 String colunmNames[];
Object cells[][];
 public MyTableModel(String colunmNames[],  Object cells[][]){
//super();
 this.colunmNames=colunmNames;
 this.cells=cells;

 };
  public String getColumnName(int c){
    return colunmNames[c];}
  public Class getColumnClass(int c){
  return cells[0][c].getClass();
  }
public int getColumnCount(){return cells[0].length;}
  public int getRowCount(){return cells.length;}
  public Object getValueAt(int r, int c) {
return cells[r][c];
  }
  public void setValueAt(Object aValue, int rowIndex, int columnIndex) {
  cells[rowIndex][columnIndex]=aValue;
  }
  public boolean isCellEditable(int rowIndex, int columnIndex) {
return true;
  }
  }



возникла проблема
надо сделать функцию вставляющую строку что то типа addRow(Object [])
вот как это реализовать?

и еще есть ли у таблицы свойство  сколько строк отображать без прокрутки?
PM MAIL   Вверх
LSD
Дата 25.11.2007, 18:53 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Leprechaun Software Developer
****


Профиль
Группа: Модератор
Сообщений: 15718
Регистрация: 24.3.2004
Где: Dublin

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



Вместо массива лучше использовать коллекции, и реализовывать addRow(List c).


--------------------
Disclaimer: this post contains explicit depictions of personal opinion. So, if it sounds sarcastic, don't take it seriously. If it sounds dangerous, do not try this at home or at all. And if it offends you, just don't read it.
PM MAIL WWW   Вверх
xber9
Дата 25.11.2007, 21:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Бывалый
*


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

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



увы но я толком не понимаю
 smile 
PM MAIL   Вверх
can4ec
Дата 26.11.2007, 02:32 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



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

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



xber9:Это моя модель сущность Автор. В ней есть метод addAuthor() (тоже самое что addRow, токо мое название). Ты добавляешь данные в свою коллекцию и вызываешь метод перерисовки fireTableDataChanged();.
И используй коллекцию (как посоветовал тебе LSD) вместо массива так немного проще 

А насчет "есть ли у таблицы свойство  сколько строк отображать без прокрутки? " ты имеешь ввиду кол-во отображаемых в начале строк без прокрутки JScrollPane?

Код

public class AuthorTableModel extends AbstractTableModel 
{
    protected ArrayList data;
    protected String[] columnName = {"Name", "URL"};
    protected AbstractManager anAbstract;

    public AuthorTableModel(ArrayList data, AbstractManager anAbstract)
    {
        super();
        this.data = data;
        this.anAbstract = anAbstract;
    }

    public int getColumnCount()
    {
        return columnName.length;
    }

    public int getRowCount()
    {
        return data.size();
    }

    public Object getValueAt(int rowIndex, int columnIndex)
    {
        Author author = (Author) data.get(rowIndex);
        switch (columnIndex)
        {
            case 0:
                return author.getName();
            case 1:
                return author.getUrl();
            default:
                return null;
        }

    }

    public Author getObject(int rowIndex)
    {
        return (Author) data.get(rowIndex);
    }

    public String getColumnName(int columIndex)
    {
        return columnName[columIndex];
    }

    public void addAuthor(Author author)
    {

        data.add(author);                    
        this.fireTableDataChanged();
    }
}

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


Бывалый
*


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

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



что то нехватает ума 
как это сделать именно для моего примера
и еще в этц можель надо передовать именно массив
прошу smile  наколдуйте что нибуть

Добавлено через 12 минут и 35 секунд
Цитата(can4ec @  26.11.2007,  02:32 Найти цитируемый пост)
А насчет "есть ли у таблицы свойство  сколько строк отображать без прокрутки? " ты имеешь ввиду кол-во отображаемых в начале строк без прокрутки JScrollPane?

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


Бывалый
*


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

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



up
подскажите плиз
PM MAIL   Вверх
dorogoyIV
Дата 28.11.2007, 11:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


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

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



загляни в исходники DefaultTableModel . 
там есть addRow(Vector v), addRow(Object [] rowData), convertToVector(Object [][] anArray) ...
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.1364 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


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

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