Всплывающие сообщения!
От: BOSSSS Россия  
Дата: 17.05.07 19:59
Оценка:
Здравствуйте!

Прошу помочь в следующей задаче:


Пишу аплет, который выглядит в виде таблицы.
Внутри ячеек расположены кружки, наведя на которые я бы хотел увидеть всплывающее сообщение,
в виде квадратика с текстом.

По возможности подробнее и с примерами(ссылки).
Я тока второй день на яве сижу, ещё не подсел на неё)

Зарание благодарствую!
Re: Всплывающие сообщения!
От: zubr Россия  
Дата: 17.05.07 20:10
Оценка:
Здравствуйте, BOSSSS, Вы писали:

BOS>Пишу аплет, который выглядит в виде таблицы.

BOS>Внутри ячеек расположены кружки, наведя на которые я бы хотел увидеть всплывающее сообщение,
BOS>в виде квадратика с текстом.
Позвольте вопрос: у вас таблица рисуется ручками, или вы используете JTable с переопределенным рендерером ячеек?
1. Тогда наверное повесить mouse listener на главную панель апплета, и менять у панели tooltip by setToolTip.
2. http://www.exampledepot.com/egs/javax.swing.table/Tips.html?l=rel
Re[2]: Всплывающие сообщения!
От: BOSSSS Россия  
Дата: 17.05.07 20:48
Оценка:
Здравствуйте, zubr, Вы писали:

Z>Позвольте вопрос: у вас таблица рисуется ручками, или вы используете JTable с переопределенным рендерером ячеек?

Подскажите как предпочтительнее? Вообще я собрался руками рисовать на JPane.

Дело в том что в JTable когда я тестировал наткнулся на следующее —
1. происходит постоянное выделение ячеек.
2. Возможность перетаскивание столбцов
3. А когда я нарисовал кружок, то он затирается таблицей постоянно.
4. Как задать заголовки строчек?
Это всё меня не устраивает!

Но если есть возможность избавиться от выше перечисленных замечанний, было бы удобно рисовать
JTable? Переопределение рендерера, хммм, а есть примерчик)))?

Z>1. Тогда наверное повесить mouse listener на главную панель апплета, и менять у панели

tooltip by setToolTip.
Z>2. http://www.exampledepot.com/egs/javax.swing.table/Tips.html?l=rel
Re[2]: Всплывающие сообщения!
От: BOSSSS Россия  
Дата: 17.05.07 20:53
Оценка:
Здравствуйте, zubr, Вы писали:

Z>1. Тогда наверное повесить mouse listener на главную панель апплета, и менять у панели tooltip by setToolTip.

Можно поподробнее зачем менять у панели tooltip?
Z>2. http://www.exampledepot.com/egs/javax.swing.table/Tips.html?l=rel

Видите ли в чём дело.. На сколько я понимаю рендерер переопределённый будет рисовать непосредственно внутри конкретной ячейки. У меня задача включает стрелки между шариками в разных ячейках, как быть в таком случае?

Спасибо за добрые советы!
Re[3]: Всплывающие сообщения!
От: zubr Россия  
Дата: 17.05.07 20:58
Оценка:
Здравствуйте, BOSSSS, Вы писали:

BOS>Здравствуйте, zubr, Вы писали:


Z>>1. Тогда наверное повесить mouse listener на главную панель апплета, и менять у панели tooltip by setToolTip.

BOS>Можно поподробнее зачем менять у панели tooltip?
Можно поступить иначе, получить glassPane, и на нем отрисовать нужный вам компонент, например, многострочный JLabel + текст подсказки.
http://java.sun.com/docs/books/tutorial/uiswing/components/rootpane.html

Z>>2. http://www.exampledepot.com/egs/javax.swing.table/Tips.html?l=rel


BOS>Видите ли в чём дело.. На сколько я понимаю рендерер переопределённый будет рисовать непосредственно внутри конкретной ячейки. У меня задача включает стрелки между шариками в разных ячейках, как быть в таком случае?


Тогда видимо не стоит извращаться, и действительно рисовать самому.
Re[4]: Всплывающие сообщения!
От: BOSSSS Россия  
Дата: 17.05.07 21:12
Оценка:
Здравствуйте, zubr, Вы писали:

спасибо, за ответы, но похоже я ещё не в состоянии сходу разобраться во всём и буду дерзать!
Помогите вот в этом:
public class Tabelle extends JApplet// implements Runnable
{
DrawPanel panel;
JScrollPane scrollPane;
public Tabelle()
{


}
public void init()
{ panel = new DrawPanel();
scrollPane = new JScrollPane(panel);
panel.setOpaque(false);
}

}

class DrawPanel extends JPanel {
public void paint(Graphics g)
{
g.drawOval(100, 100, 50, 50);
super.paint(g);
g.drawOval(100, 100, 50, 50);
}

public void paintComponents(Graphics g)
{
g.drawOval(100, 100, 50, 50);
super.paint(g);
g.drawOval(100, 100, 50, 50);

}
}

Почему рисует, но тут же стирается кружочек?
Правильная ли структура аплета?

спасибо
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.