Criar formulário em tempo de execução JAVA

7 respostas
F

Galera desta vez o problema é diferente:

estou querendo criar um formulário a partir de um formulario construtor em tempo de execução.

Como funcionaria?

Teria um formulário com as opções ‘criar button’, ‘criar formulário’, por exemplo, quando eu clicar no botão ‘criar formulário’ ele cria o formulário e me mostra em uma janelinha como está ficando, então o usuário clica em ‘criar button’ e escolhe a posição x y e então coloca-se ali e atualiza a imagem de como está ficando.

Não sei se existe uma biblioteca e/ou API que auxilia nisso, mas não tenho idéia por onde começar.

Grato

7 Respostas

R

Swing ou web?

F

Swing, foi mal não ter especificado

IDE - NetBeans
Java Desktop - Swing

E

fallante:
Galera desta vez o problema é diferente:

estou querendo criar um formulário a partir de um formulario construtor em tempo de execução.

Como funcionaria?

Teria um formulário com as opções ‘criar button’, ‘criar formulário’, por exemplo, quando eu clicar no botão ‘criar formulário’ ele cria o formulário e me mostra em uma janelinha como está ficando, então o usuário clica em ‘criar button’ e escolhe a posição x y e então coloca-se ali e atualiza a imagem de como está ficando.

Não sei se existe uma biblioteca e/ou API que auxilia nisso, mas não tenho idéia por onde começar.

Grato

O Google sabe mais inglês que português. Procure por “form designer java”. De qualquer maneira, é uma coisa bem complicada: por que é que você quer fazer isso? Lhe pediram, ou é uma coisa que você quer fazer porque é legal? Se lhe pediram, então é melhor gastar seu tempo procurando um bom, que você goste. Se é uma coisa que você quer fazer porque é legal, comece a estudar um pouco de Java2D, para você aprender, por exemplo, como é que se desenha um retângulo que muda conforme você o vai arrastando com o mouse, para você poder posicionar o elemento (como o botão).

F

entanglement:

O Google sabe mais inglês que português. Procure por “form designer java”. De qualquer maneira, é uma coisa bem complicada: por que é que você quer fazer isso? Lhe pediram, ou é uma coisa que você quer fazer porque é legal? Se lhe pediram, então é melhor gastar seu tempo procurando um bom, que você goste. Se é uma coisa que você quer fazer porque é legal, comece a estudar um pouco de Java2D, para você aprender, por exemplo, como é que se desenha um retângulo que muda conforme você o vai arrastando com o mouse, para você poder posicionar o elemento (como o botão).

tipo assim já procurei algo como “create form at run time java”, mas não encontrei nada também.

O meu problema é que preciso criar de 30 a 70 formularios, porém cada cliente vai utilizar 2 a 10 no máximo. Então cada cliente pode criar o seu entendeu?

Respondendo a sua pergunta num é nenhum, nem outro. Alguem me pediu algo e acho que essa saida eh a melhor. rsrs

Sei que não é nada fácil, mas preciso pelo menos o rumo pra tentar.

Grato

R

Algo do tipo (por Paulo Sobreira):

import java.awt.Dimension;
import java.awt.GridLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JTextField;

public class Teste {

public static void main(String[] args) {
final JFrame frame = new JFrame();
JButton jButton = new JButton("Criar Botao");
jButton.addActionListener(new ActionListener() {

public void actionPerformed(ActionEvent e) {
JTextField x = new JTextField("100");
JTextField y = new JTextField("100");
JPanel jPanel = new JPanel(new GridLayout(2, 2));
jPanel.add(new JLabel("x"));
jPanel.add(x);
jPanel.add(new JLabel("y"));
jPanel.add(y);
JOptionPane.showMessageDialog(frame, jPanel);
JButton jButton = new JButton("Teste");
jButton.setBounds(new Integer(x.getText()), new Integer(y
.getText()), 120, 40);
frame.getContentPane().add(jButton);
}
});
frame.getContentPane().setLayout(null);
frame.getContentPane().add(jButton);
jButton.setBounds(0, 0, 120, 20);
frame.setSize(new Dimension(800, 600));
frame.setVisible(true);
}
}
F

Rafael Carneiro esse exemplo é um bom começo,

mas sabe se existe algo como:

Eu tenho um formulario construtor como o que vc fez com o botão “Criar Botao” e outros botões “Criar Formulario”, “Criar Painel” etc
Quando eu criar ele vai armazenando as informações em outro formulário e vai me mostrando em um imagem como está ficando o formulario que está sendo construido (nao sei se estou sendo claro)

outro aspecto interessantísimo era se eu pudesse arrastar o componente novo, satisfaria a necessidade completamente

resumindo:

Preciso de uma imagem que se atualizaria a cada componente criado e posicionado de acordo com o novo formulario
E se possivel arrastar depois de pronto o formulario, para ajustes.

Grato

R

Não sei se existe algum componente pronto, acredito que não exista.

Você terá que implementar essa funcionalidade.

Criado 22 de dezembro de 2010
Ultima resposta 25 de jan. de 2011
Respostas 7
Participantes 3