JMenu'ya aşırı yüklenmeye çalışıyorum ve JTextField'ı desteklemek için bazı özel kodlar koydum ama bu iyi gitmiyor. Buradaki temel amacım, menü öğemlerin sağında bir arama alanı eklemektir. Bu yüzden Dosya, Düzen, soldan yardım gibi bir şey var ve sağ tarafta, bazı tarayıcılarda google arama çubuğunun nasıl olduğu gibi arama çubuğu var. Bu işlevselliği ekleme konusunda nasıl gidebileceğimin bir fikri var mı?JFrame'in MenuBar'ına JTextField'ı nasıl ekleyebilirim?
cevap
Ben JMenuItem
olarak, ben alyways JMenuBar
import java.awt.ComponentOrientation;
import javax.swing.*;
public class MenuGlueDemo {
public MenuGlueDemo() {
JMenuBar menuBar = new JMenuBar();
menuBar.add(createMenu("Menu 1"));
menuBar.add(createMenu("Menu 2"));
menuBar.add(createMenu("Menu 3"));
menuBar.add(new JSeparator());
menuBar.add(new JButton(" Seach .... "));
menuBar.add(new JTextField(" Seach .... "));
menuBar.add(new JComboBox(new Object[]{"height", "length", "volume"}));
menuBar.add(Box.createHorizontalGlue());
menuBar.add(createMenu("About"));
JFrame frame = new JFrame("MenuGlueDemo");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.add(menuBar);
frame.pack();
frame.setVisible(true);
}
public JMenu createMenu(String title) {
JMenu m = new JMenu(title);
m.add("Menu item #1 in " + title);
m.add("Menu item #2 in " + title);
m.add("Menu item #3 in " + title);
if (title.equals("About")) {
m.setComponentOrientation(ComponentOrientation.RIGHT_TO_LEFT);
}
return m;
}
public static void main(String[] args) {
javax.swing.SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
MenuGlueDemo menuGlueDemo = new MenuGlueDemo();
}
});
}
}
Keşke bunu bir kez daha yapabilirim, başka bir mükemmel cevap için teşekkür ederim! – Grammin
size hoşgeldiniz, +1'e yardımcı olmaktan memnunum, ve herhangi bir JComponent'i JMenuItem'e koymak için kolay bir iş değil, sadece JDialog/JWindow (GridLayout) için eklenmiş JComponents – mKorbel
Ah ok, tavsiye için teşekkürler – Grammin
- 1. Raylarıma nasıl giriş ekleyebilirim?
- 2. sigma.js eklentilerini nasıl ekleyebilirim?
- 3. Bir wstring'e nasıl ekleyebilirim?
- 4. Pelikan'a görüntüleri nasıl ekleyebilirim?
- 5. Düğmecemi ActionBar'a nasıl ekleyebilirim?
- 6. Ağaç tablosuna nasıl ekleyebilirim
- 7. PDO'ya nasıl ekleyebilirim (sqllite3)?
- 8. System.Windows.Shapes'ı nasıl ekleyebilirim?
- 9. /dev/tty'ye nasıl ekleyebilirim?
- 10. Listenin ilk konumuna nasıl ekleyebilirim?
- 11. Kullanıcı denetimlerine nasıl çağrı ekleyebilirim?
- 12. Bir dersi pypy'de nasıl ekleyebilirim?
- 13. Çoklu iş parçacığı nasıl ekleyebilirim?
- 14. Menubar'a nasıl bir QLineEdit ekleyebilirim
- 15. jsdoc BackboneJS kodunu nasıl ekleyebilirim?
- 16. Python'u cmd'ye cmd'ye nasıl ekleyebilirim?
- 17. SQL: Belirli satırları nasıl ekleyebilirim?
- 18. TensorBoard Görüntülerine nasıl etiket ekleyebilirim?
- 19. Octave'de bir vektöre nasıl ekleyebilirim?
- 20. NSString'e tırnak işaretleri nasıl ekleyebilirim?
- 21. .csproj dosyasına DLL'leri nasıl ekleyebilirim?
- 22. Tıklat olayını Ext.Img'ye nasıl ekleyebilirim?
- 23. Modelin tüm özelliklerini nasıl ekleyebilirim?
- 24. R'ye kısmi zamanları nasıl ekleyebilirim?
- 25. Kategoriyi tercih üstbilgisine nasıl ekleyebilirim?
- 26. MSSQL'e 100000 satır nasıl ekleyebilirim?
- 27. Dizeye nasıl derece işareti ekleyebilirim?
- 28. Dilim yansımasına öğelerini nasıl ekleyebilirim?
- 29. ADO.NET Varlığına kısıtları nasıl ekleyebilirim?
- 30. SQL Column'a nasıl metin ekleyebilirim
yerleştirilir Neden iyi gitmiyor olduğunu düşünüyorum asla görmek? Ne * özellikle * seni rahatsız ediyor gibi görünüyor? – mre
@mre Ben bir düğme yerine metin kutusunu eklemek çalışıyorum bir çıkmaz içine koştum. JMenuItem, AbstractButton öğesinden devraldığı için, bir Özet Kutusundaki metni değiştirmek yerine bir metin kutusu eklemeyi bilmiyorum. Ben de bunun, bahsettiğim işlevselliği eklemenin en iyi yolu olduğuna inanmıyorum, çünkü JMenu'nun derinliklerinde bir takım şeyleri değiştirmek zorunda kalabilirim. Sanırım bunu yapmak için daha iyi bir yol üzerinde rehberlik yapıyorum. – Grammin