JEditorPane + Swf é possível?

3 respostas
lilirc

Fiz um browser muito simples com o JEditorPane e este está funcinando perfeitamente, porém ao tentar rodar um arquivo swf mesmo mudando o contentType isso não é possível, lí em alguns foruns e oq me parece realmente não tem como fazer isso. :shock:
Na verdade estou chamando um arquivo html que este chama um swf…

Alguém saberia me dizer se isto é possível ou se alguém tem alguma outra alternativa para isso!? :?: :?

Obrigada desde já.

3 Respostas

TangZero

Sim, é possível.

Estou num projeto que tive de adicionar uma “proteção de tela” feita em Flash a um sistema feito em Swing.
Dá um pouquinho de trabalho.
Você terá de usar o objeto Browser do SWT e usar uma ponte AWT/SWT para colocar o Browser em um Panel do Swing.

Exemplo:

boolean isWindows = System.getProperty("os.name").contains("Windows");

display = new Display();
shell = new Shell(display);
shell.setLayout(new FillLayout());
shell.setLocation(0, 0);
shell.setSize(640, 480);
shell.setFullScreen(true);

int browserType;
if (isWindows) {
	browserType = SWT.NONE;
} else {
	browserType = SWT.MOZILLA;
}

browser = new Browser(shell, browserType);

shell.open();
browser.setUrl("http://www.umaurlqualquer.com/hello.swf");

while (!shell.isDisposed()) {
	if (!display.readAndDispatch()) {
		display.sleep();
	}
}
display.dispose();

Daí, você procura como adicionar esse Browser no seu Panel.

:wink:

lilirc

Muito Obrigada TangZero :thumbup:, tava “apanhando” aki com este problema, o código funcionou perfeitamente e atendeu as minhas necessidades… :smiley: :wink:

lilirc

Ah havia me esquecendo de um importante detalhe… rs :?

O único problema de utilizar SWT seria a portabilidade, ou melhor dizendo e corrigindo, ele é portavel, porém eu teria que levar o meu pacote jar + .dll no caso do Windowns e no caso do Linux o pacote jar + .so … etc, sendo que lí em alguns foruns q o SWT ainda não está 100% para Mac, me corrijam se eu estiver errada.

Alguém tem mais uma idéia de como pode ser feito para fazer um browser em java rodar swf, no caso o ideal mesmo seria em Swing já que o SWT utiliza componentes do S.O. … pq a aplicação que estou desenvolvendo é instalada a partir de um CD e este deveria ser multiplataforma… se eu utilizar SWT eu teria de ter um instalador para cada tipo de S.O, oq não seria interessante.

Ajudas, discussões, críticas e palpites são bem vindos…

Obrigada :smiley:

Criado 11 de agosto de 2008
Ultima resposta 11 de ago. de 2008
Respostas 3
Participantes 2