Posts
11/01/2010
Henrique Weissmann
Oi Israel,
bom: vamos por partes. Pra começar, sugiro que você dê uma lida neste artigo: "Adding Auto Completition to Swing ComboBoxes"
http://today.java.net/pub/a/today/2007/07/19/adding-auto-completion-to-swing-comboboxes.html
O que deve ser executado é o seguinte: no evento keyListener do seu componente, conforme o usuário for digitando o texto, deve ser feita uma busca na base de dados. Esta busca, por sua vez, deve retornar um único campo como resultado.
Este único campo deverá alimentar um objeto do tipo List, que, por sua vez, deverá alimentar o conteúdo do seu JComboBox.
11/01/2010
Israel Barbosa
Codigo responsavel pela inicialização dos componentes entre eles o de autoCompletar
De uma forma simples este código esta executando o autoCompletar da forma correta.
Estou utilizando GlazedLists. Vc quer que eu te evie codigo completo do exemplo?
private void initComponents(){
titleLable = new JLabel("Autores:");
autorTable = new ZebraJTable();
autorTable.setModel(TableModels.createAutorTableModel(autorManagerModel.getAutorSelection()));
autorTable.setSelectionModel(new SingleListSelectionAdapter(autorManagerModel.getAutorSelection().getSelectionIndexHolder()));
///*******************************
List elements = autorManagerModel.getAutorSelection().getList();// This list is synchronized with database.
searchComponent = new JComboBox();
AutoCompleteSupport support = AutoCompleteSupport.install(searchComponent, GlazedLists.eventListOf(elements.toArray()));
//********************************
newButton = new JButton(autorManagerModel.getNewAction());
editButton = new JButton(autorManagerModel.getEditAction());
removeButton = new JButton(autorManagerModel.getRemoveAction());
}
18/01/2010
Israel Barbosa
Ola Henrique, preciso saber como esta o ondamento do chamado?
19/01/2010
Henrique Weissmann
Oi Israel,
me desculpe pela demora na resposta ok?
Bom: não estou conseguindo entender agora qual o problema se o código está funcionando ok.
Como posso lhe ajudar daqui pra frente? Quais os pontos nos quais está encontrando dificuldades?
19/01/2010
Israel Barbosa
Eu precisava saber como faço para que apareça tipo um menu suspenso para uma opção de pesquisa
ou por id, ou qualquer outro campo da tabela semelhante ao componente de pesquisa do netbeans citado
anteriormente. E tambem fazer com que apareça um icone dentro do componente.
19/01/2010
Israel Barbosa
Eu precisava saber como faço para que apareça tipo um menu suspenso para uma opção de pesquisa
ou por id, ou qualquer outro campo da tabela semelhante ao componente de pesquisa do netbeans citado
anteriormente. E tambem fazer com que apareça um icone dentro do componente.
19/01/2010
Henrique Weissmann
Oi Israel,
como assim "um ícone dentro do componente"?
Com relação ao menu suspenso, bem: o próprio JComboBox é, na realidade, um menu suspenso com as opções necessárias, não?
20/01/2010
Israel Barbosa
Vou ver se consigo capturar uma imagem para exemplicar mehor.
21/01/2010
Israel Barbosa
Bom dia Henrique
Vou especificar melhor o que eu gostaria de fazer:
1 - Observe primeiramente que a seta do componente encontra-se
do lado direito, o oposto ao modo de exibição padrão do
componente e possui um icone de uma lupa o que simboliza
uma pesquisa como na imagem a
seguir:
Note que a impressão que se tem é que o icone parace estar inserido no componente de pesquisa
2 - Observe agora que quando clicko na seta é apresentado uma
espécie de menu suspenso contendo várias opções como:
- Todas categorias
- Ações
- Ir para tipo
- Opções
- Repositórios Maven
- Ajuda
3 - Note que quando uma das opções é selecionada ela fica marcada
com uma bolinha e aparece escrito no componente
pesquisar em + opção selecionada.
4 - Quando realizo uma pesquisa a filtragem ocorre somente pela
opção que foi selecionada.
Duvida:
Como proceder para obeter-se o mesmo resultado visual do
componente apresentado, ou seja quais são as etapas para
sua customização?
Basicamente consigo fazer aparecer um menu suspenso como na
figura a seguir:
no entanto não consigo colocar um icone para personalizar o
componente. E tambem gostaria que o menu suspenso
aparece não quando o componente ganha o foco e sim quando
o icone é clikado.
Sabendo que o NetBeans foi desenvolvido em swing deve
haver uma maneira para isto.
Opa ,vou tentar elaborar algo aqui e te passo , soh vou precisar de um pouco de tempo OK ? Já desenvolvi componentes com Swing , porem não neste estilo... vou dar uma olhadinha !!!
29/01/2010
Israel Barbosa
Não tem problema, Fico no aguardo.
08/02/2010
Israel Barbosa
E então Dyego. Vc conseguiu elaborar algo
09/02/2010
Israel Barbosa
Ola!
Dyego a mesma pergunta deste chamado fiz para o Hugo Vidal Teixeira que ja publicou vários artigos na JavaMagazine e a respos ta que obtive foi a seguinte:
você deve criar uma classe que herda de JTextField e implementar aqueles detalhes. Você deve sobrescrever o método que pinta o componente para conseguir aquele efeito.
O vc me diz a respeito?
Na realidade estou fazendo um COMPOSITE COMPONENT...
Ou seja , um componente que é a composição de outros... assim fica mais facil de entender e o resultado final mais legal... e independente !
Guentae que já subo o componente por disco virtual !
09/02/2010
Israel Barbosa
Sem problemas, como disse não tenho pressa. Na verdade havia feito a mesma pergunta deste chamado ao
Hugo Vidal Teixeira antes de abri-lo e somente agora que ele me respondeu.
Pela atenção muito obrigado!