E 'possibile nascondere la freccia visualizzata nel JComboBoxNascondi JComBox Box Freccia
ho provato a installare:
combo.getComponent(0).setSize(new Dimension(1,1));
ma doesnt sembra funzionare
E 'possibile nascondere la freccia visualizzata nel JComboBoxNascondi JComBox Box Freccia
ho provato a installare:
combo.getComponent(0).setSize(new Dimension(1,1));
ma doesnt sembra funzionare
È necessario creare una nuova casella combinata UI per quello:
combo.setUI(new BasicComboBoxUI() {
protected JButton createArrowButton() {
return new JButton() {
public int getWidth() {
return 0;
}
};
}
});
Ma attenzione ad ereditare dall'interfaccia utente di base che corrisponde al tuo aspetto attuale sentire.
Ad esempio, se si utilizza la sostanza, è necessario ricavare la nuova interfaccia utente da SubstanceComboBoxUI
anziché da BasicComboBoxUI
. Altrimenti si potrebbe perdere caratteristiche fornite dal Vostro L corrente & F.
EDIT: Se si desidera questo per ottenere una sorta di funzione di auto-completamento è meglio attaccare con un normale JTextField
e utilizzare AutoCompleteDecorator
da SwingX.
grazie. Inoltre, ho notato, quando faccio clic sullo spazio in cui è stata disegnata la freccia giù, la casella combinata scende, è possibile evitare anche questo comportamento? – Akash
-1 per hack fragili ... @Akash se non si desidera un comportamento combobox, non utilizzare una combo – kleopatra
@DR. per favore cambiate con i resi AbstractButton con Icon # null – mKorbel
Ho cercato una soluzione a questo per un po 'ora, e si scopre che tutto ciò che serve davvero è ricordare che JComboBox
è un componente composto.
for (Component component : TheComboBox.getComponents())
{
if (component instanceof JButton) {
TheComboBox.remove(component);
}
}
removeAll() funziona anche –
duplicato di [questa domanda] (http://stackoverflow.com/questions/7243135/how-to-remove-the-arrow-down-in-the-jcombobox) – Mansuro
e commento duplicato: perché? non inventare i tuoi widget, gli utenti si confonderanno! – kleopatra