|
|
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
На основе JInternalFrame я создаю свой класс (скажем ClassForm) на формочку кидаю jTable и еще чегонить Потом хочу создать на основе ClassForm уже рабочую форму public class BrowseData extends ClassForm .. .. Но на созданной форме jTable и других компонентов нету... Чего не так ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 01:06:19 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Хорошо бы код увидеть - хотя бы значимые его части. А то предполоджить можно что угодно, например, что Вы не из конструктора, а из метода main добавляете на родительский фрейм таблицы и прочее. Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya Aiya Eärendil Elenion Ancalima! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 09:00:25 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
метод в котором происходит "накидывание" вызывается? наследование в gui дизайнерах - полнейший бред. ознакомтесь лучше с building ом напр как на jgoodies советуют ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 09:02:33 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
exppметод в котором происходит "накидывание" вызывается? наследование в gui дизайнерах - полнейший бред. ознакомтесь лучше с building ом напр как на jgoodies советуют Т.е. GUI-дизайнеров нету нормальных или что ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 10:32:04 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Стоп, а при чем тут вообще GUI ? Создаю базовый класс (точнее код генерит NetBeans) public class BaseClass extends javax.swing.JInternalFrame { /** Creates new form BaseClass */ public BaseClass() { initComponents(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc=" Generated Code "> private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); jTable1 = new javax.swing.JTable(); jTable1.setModel(new javax.swing.table.DefaultTableModel( new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { "Title 1", "Title 2", "Title 3", "Title 4" } )); jScrollPane1.setViewportView(jTable1); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 379, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 281, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); }// </editor-fold> // Variables declaration - do not modify private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTable jTable1; // End of variables declaration Создаю на его основе свою форму public class WorkForm extends BaseClass { /** Creates new form WorkForm */ public WorkForm() { initComponents(); } /** This method is called from within the constructor to * initialize the form. * WARNING: Do NOT modify this code. The content of this method is * always regenerated by the Form Editor. */ // <editor-fold defaultstate="collapsed" desc=" Generated Code "> private void initComponents() { javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 394, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 274, Short.MAX_VALUE) ); pack(); }// </editor-fold> // Variables declaration - do not modify // End of variables declaration } } Что - то еще надо сделать ? Я jTable ни в GUI не вижу, ни в RunTime ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 10:42:45 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Нечитаемо абсолютно. Nai tiruvantel ar varyuvantel i Valar tieyanna nu vilya Aiya Eärendil Elenion Ancalima! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 10:54:50 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Читаем про наследование... 1. Метод initComponents() - private. Как ты его вызовешь из дочки? 2. Метод initComponents() в дочке нигде не вызывается. Сделай оба метода protected и из метода дочки сначала вызывай метод родителя. Код не читал, как эта хрень взлетит неизвестно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 11:07:33 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
olegov , у вас метод InitComponents предка в потомке нигде не вызывается. Какую JTable вы еще хотите увидеть??? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 11:09:43 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Еще разок //Создаю вой (базовый) класс от public class BaseClass extends javax.swing.JInternalFrame { public BaseClass() { initComponents(); } // Этот метод нерерит NetBeans (описание элементов формы) private void initComponents() { jScrollPane1 = new javax.swing.JScrollPane(); // Кидает панель прокрутки для таблицы jTable1 = new javax.swing.JTable(); // Кидает таблицу // Описывает модель таблицы (тупую по умолчанию, в данном случае не важно) jTable1.setModel(new javax.swing.table.DefaultTableModel(new Object [][] { {null, null, null, null}, {null, null, null, null}, {null, null, null, null}, {null, null, null, null} }, new String [] { "Title 1", "Title 2", "Title 3", "Title 4" } )); jScrollPane1.setViewportView(jTable1); // Описывает механизм расположения элементов на форме javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 379, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, 281, javax.swing.GroupLayout.PREFERRED_SIZE) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); } private javax.swing.JScrollPane jScrollPane1; private javax.swing.JTable jTable1; } Создаю на его основе свою форму public class WorkForm extends BaseClass { public WorkForm() { initComponents(); } private void initComponents() { javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 394, Short.MAX_VALUE) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGap(0, 274, Short.MAX_VALUE) ); pack(); } } так вроде читабельнее Не пойму как тут отступы проставить. При наборе нормально, при просмотре левых отступов нет ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 11:12:25 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
AnarionЧитаем про наследование... 1. Метод initComponents() - private. Как ты его вызовешь из дочки? 2. Метод initComponents() в дочке нигде не вызывается. Сделай оба метода protected и из метода дочки сначала вызывай метод родителя. Код не читал, как эта хрень взлетит неизвестно. Дык InitComponents NetBeans генерит сам и править его не дает (в числе и private на protected) Елы палы, действительно базовые классы проще руками писать с таким раскладом. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 11:16:38 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
olegov Еще разок так вроде читабельнее Не пойму как тут отступы проставить. При наборе нормально, при просмотре левых отступов нет тэг SRC есть для кода ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 11:55:15 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
точно не знаю как GroupLayout работает (не пользовался им никогда), но предположение такое что в своем потомке устанавливаешь новый Layout и все старые компоненты у тебя пропадают Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 12:02:27 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Кстати, да. У тебя компоненты или перекроют друг друга или будет что-то одно. Такие вещи лучше писать руками. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 12:15:21 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
vas0точно не знаю как GroupLayout работает (не пользовался им никогда), но предположение такое что в своем потомке устанавливаешь новый Layout и все старые компоненты у тебя пропадают Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. точно, сабака тут порылась. Если в своей рабочей форме я комментрию initComponents(); то в RunTime все ok. Правда в дизайнере так ничего и не видно. Туда как раз NetBeans из метода initComponents() все и дергает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 12:43:35 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
И как тут быть теперь. ОТказаться от GUI ? Это бред. Проектик не кислый намечается. Руками его сто лет кодить придется. В NetBeans может есть механизм какой то ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 19:00:30 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
не а. нормального gui дизайнера не видел. прочитайте про building или всякие xml билдеры свинговых форм посмотрите мануальный гуй сильно повышает качество архитектуры. (если не копипастить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 19:11:20 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
Среднехиленькая бухгалтерская программка аля 1С Бухгалтерия 7.7 насчитывает под сотню форм просмотра/ввода данных. В нашей торговой программке сейчас около 270 с хвостиком форм. 80% форм строятся на основе 2-4 базовых классов, но практически каждая имеет массу своих наворотов, которые не визуально задолбаешься наворачивать. Раскидать кнопки и контролы как нипопади лишь бы они были ? Кто такое чудище купит ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2007, 20:08:39 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
сколько не смотрел формостроителей - лучший у жбилдера. Все эти формочки одна от другой наследуемые прекрасно в нём отображаются. У нетбинса конечно хороший редактор форм но пользоваться им невозможно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 09:49:04 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
olegovСреднехиленькая бухгалтерская программка аля 1С Бухгалтерия 7.7 насчитывает под сотню форм просмотра/ввода данных. В нашей торговой программке сейчас около 270 с хвостиком форм. 80% форм строятся на основе 2-4 базовых классов, но практически каждая имеет массу своих наворотов, которые не визуально задолбаешься наворачивать. Раскидать кнопки и контролы как нипопади лишь бы они были ? Кто такое чудище купит ? я могу тока повториться ...oop-pattern'ы спасут отца русской демократии. единственное во что я верю это во всякие Swing XML, или F3 там всякие ... только слишком много их развелось, выбрать наверное трудно ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 10:26:50 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
патерны-шматерны. Рисовать мышкой удобней чем код сразу писать ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 12:00:56 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
1024патерны-шматерны. Рисовать мышкой удобней чем код сразу писать продуманный гуёвый минифрэймворкчег позволяюши писать типа сделайФорму из этого и этого, прицепи к этому рвёт в клочья гуйдизайнерский копипаст ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 12:26:54 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
8) можно где-то примеры увидеть? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 13:01:57 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
expp продуманный гуёвый минифрэймворкчег позволяюши писать типа сделайФорму из этого и этого, прицепи к этому рвёт в клочья гуйдизайнерский копипаст Эт чегой то такое "гуйдизайнерский копипаст" ? Как раз если нормальный ГУИ то никакого копи/паста не нужно. Создал один раз универсальный класс формы с табличкой и кнопками, а потом наследуй от нее, да привешивай картиночки да кнопочки специфические. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 13:58:36 |
|
||
|
вопрос по наследованию от JInternalFrame
|
|||
|---|---|---|---|
|
#18+
ок. на каждой форме в табличке должны быть разные колонки? и как ? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 21.06.2007, 14:17:26 |
|
||
|
|

start [/forum/topic.php?fid=59&msg=34608897&tid=2145343]: |
0ms |
get settings: |
19ms |
get forum list: |
27ms |
check forum access: |
9ms |
check topic access: |
9ms |
track hit: |
69ms |
get topic data: |
26ms |
get forum data: |
7ms |
get page messages: |
115ms |
get tp. blocked users: |
3ms |
| others: | 363ms |
| total: | 647ms |

| 0 / 0 |
