powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Java [игнор отключен] [закрыт для гостей] / JasperViewer
7 сообщений из 7, страница 1 из 1
JasperViewer
    #37887946
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Вопрос следующий:
как можно написать свой обработчик нажатия кнопки "Сохранить" в JasperViewer'e?
...
Рейтинг: 0 / 0
JasperViewer
    #37887953
Фотография ivanov-void
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditban,

Сохранить в какой- то определенный формат вы имеете в виду?
...
Рейтинг: 0 / 0
JasperViewer
    #37887959
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
ivanov-void,

просто как сохранить в какой-то формат я знаю. Мне нужно переопределить действие именно этой кнопки, то есть сохранить в определенном формате и НЕ ТОЛЬКО.
...
Рейтинг: 0 / 0
JasperViewer
    #37889047
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditban,

Смотреть надо в
net.sf.jasperreports.view.JRViewer

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
	private void initComponents() {
		java.awt.GridBagConstraints gridBagConstraints;

		tlbToolBar = new javax.swing.JPanel();
		btnSave = new javax.swing.JButton();
       ....

       		btnSave.addActionListener(new java.awt.event.ActionListener() {
			public void actionPerformed(java.awt.event.ActionEvent evt) {
				btnSaveActionPerformed(evt);
			}
		});

      ...
	void btnSaveActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_btnSaveActionPerformed
		// Add your handling code here:

		JFileChooser fileChooser = new JFileChooser();
		fileChooser.setLocale(this.getLocale());
      ...


ну и тут править и получить собственный Jasper :)

Или наваять несколько классов. В одном из них наследоваться от JRViewer и подпилить под себя типа:

Код: java
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
public class JasperViewPanel extends JRViewer{

	public JasperViewPanel() {
		this(null);
	}
	
	public JasperViewPanel(JasperPrint jrPrint) {
		super(jrPrint);
		tlbToolBar.setVisible(false); //прячем стандартный тулбар
		lblStatus.setVisible(false); //прячем статусбар
                ... 
                // и рисуй свой тулбар какой хочешь
                // или вставить это (JRViewPanel) в свое какое-нить окошечко
                // но тут поработать придется в обоих случаях
	}


Могу и обмануть, не спец в свингах. А копать здесь где-то
...
Рейтинг: 0 / 0
JasperViewer
    #37891563
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sanBez,

спасибо, буду копать)
...
Рейтинг: 0 / 0
JasperViewer
    #37891740
ditban
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
sanBez,

в первом варианте откуда берется initComponents() ?я так понимаю, надо переписать класс JasperViewer в любом случае и ему прописать свой тулбар? В чем принципиальная разница?
...
Рейтинг: 0 / 0
JasperViewer
    #37892119
sanBez
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ditbansanBez,
я так понимаю, надо переписать класс JasperViewer в любом случае и ему прописать свой тулбар? В чем принципиальная разница?
Принципиальная разница в подходе:

Вариант 1. Корячим "родные" исходники Jasper, подгоняем под себя. Во-первых не знаю насколько это правомерно с точки зрения закона. Во вторых при апдейте на следующую версию (а они их клепают раз в три месяца, а то и чаще) надо будет опять встраивать свои правки в их код.

Вариант 2. Написав свой собственный вьюер (используя "чистый" JRViewer как элемент своего класса) вы получаете более легкое в модификации и поддержке средство для просмотра JasperPrint объекта. На которое можете навертеть дополнительную функциональность для своих целей (например кидать отчет по почте). И под свои стандарты интерфейса подогнать. И использовать в нескольких проектах.... Отлично впишется в свинговое приложение
В качестве бонуса можно реализовать вызов просмотрщика, например, не из контекста приложения, а вообще как самостоятельный модуль.
...
Рейтинг: 0 / 0
7 сообщений из 7, страница 1 из 1
Форумы / Java [игнор отключен] [закрыт для гостей] / JasperViewer
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]