O visual editor gera e analisa o código Java conforme você projeta sua classe visual. O Visual Editor utiliza um estilo particular para seu código Java gerado e possui regras para análise do código Java.
O visual editor para Java gera um código Java válido que pode ser adequadamente
compilado e executado. Além disso, quando o visual editor analisa um código Java
existente, ele utiliza regras para determinar quais elementos do código tentará visualizar
na visualização Design.
Regras para Analisar Código para Exibição na Visualização Design
O Visual Editor para Java tenta visualizar o código na visualização Design se o código atender
qualquer um dos seguintes critérios:
Há outros requisitos que o Visual Editor verifica antes de visualizar um componente
na visualização gráfica Design:
- Os campos devem ser instanciados dentro de um método obtido ou o bean deve ser inicializado por um método de inicialização listado na guia Estilos Padrão da página Preferências do visual editor.
- Não deve haver um erro de compilação na linha.
- Uma classe deve ser válida para carregar e instanciar.
- A maioria das expressões de inicialização não podem ser avaliadas.
- Os argumentos complexos de um método podem ser entendidos desde que as entidades que formam o argumento sejam modeladas.
Por exemplo, uma expressão envolvendo concatenação de cadeia utilizando o operando + será avaliada corretamente na maioria dos casos.
A maioria das expressões é analisada com êxito, mas nem todas as expressões podem
ser corretamente avaliadas. Neste caso, um sinal de aviso será mostrado no Java bean nas visualizações e a razão para a falha será mostrada na linha de status
quando o bean for selecionado na visualização Design ou na visualização Beans Java.
Um ícone de aviso também é exibido no canvas:

Código gerado pelo visual editor
- O visual editor gera construtores padrão que chamam o método initialize(),
que define os valores das propriedades para a classe.
- Para applets, o código para definir os valores de propriedade inicial é chamado de init().
Este não é chamado pelo construtor, uma vez que ele será executado pelo próprio
navegador do applet.
- Opcional: Você pode especificar que o visual editor gere blocos try{}catch() para os
componentes. Isso irá continuamente capturar cada exceção lançada durante a inicialização
e o risco de exceções sendo eliminadas pode aumentar.
Portanto, é melhor deixar que a exceção seja transmitida. É possível selecionar
essa opção na guia Geração de Código das preferências do visual editor
().
O código a seguir mostra um JPanel inicializado com o bloco try{}catch():
private JPanel getJPanel1() {
if (jPanel1 == null) {
try {
jPanel1 = new JPanel();
}
catch (java.lang.Throwable e) {
// TODO: Something
}
}
return jPanel1;
}
O código a seguir mostra um JPanel sem o bloco try{}catch()
de código:private JPanel getJPanel() {
if (jPanel == null) {
jPanel = new JPanel();
}
return jPanel;
}
- Opcional: É possível também especificar que o visual editor inclua um comentário
marcando cada expressão que ele gerar. Isso pode ser útil para distinguir um
código escrito à mão de um código gerado. A linha de código a seguir é um exemplo de
como pode ser um comentário:
this.add(getJPanel(), null); // Generated
Para ativar essa opção, selecione a caixa de opções
Gerar um comentário para novas expressões na guia
Geração de Código das preferências do visual editor.
- Para Swing/AWT, embora o visual editor gere métodos como getPanel() que instanciam e retornam um único Java bean,
isso não é um requisito. Um método pode instanciar mais de um Java bean e o valor de
retorno do método não é importante para reconhecer se o campo é um Java bean. Para que
os campos anOKButton e ivjTableModel sejam incluídos como beans Java, eles deverão ser instanciados dentro de um método obtido na classe.
- Para SWT, o Visual Editor gera métodos private void createComposite() para cada classe que esteja estendendo Composite e todos os beans filhos são inicializados dentro do mesmo método.
- Se a classe editada estender um Java bean, a instância que estiver sendo editada será
representada com um Java bean especial chamado de parte 'this'. A parte 'this' não pode
ser excluída da visualização Design ou da visualização Beans Java e o método de inicialização
para suas propriedades é feito no método initialize().
Uma parte 'this' será mostrada apenas na visualização Design e na visualização Java Beans se houver
propriedades que estejam disponíveis para definição na visualização Propriedades.
Os métodos definidos para as propriedades são gerados no método initialize() ou, se a classe
estender java.awt.Applet, o método init() será utilizado.
- Se a classe editada implementar org.eclipse.ui.IWorkbenchPart, o código gerado para os controles filhos é incluído no método createPartControl(Composite parent).