Вопросы по тегу: combobox

(5)

Объединить функции ComboBoxes

Я пытался создать ComboBoxes с элементами год, месяц, день. Я это сделал. Однако мне нужно СУШИТЬ свой код. Не могли бы вы мне с этим помочь? Не знаю, может, я не могу СУШИТЬ этот код, потому что я слишком много думаю./// /// Function that fills comboboxes with items (values) /// /// public void cbItems(int year) { ComboBoxItem cbItem = new ComboBoxItem(); cbItem.Content = year; comboBox.Items.Add(cbItem); } public void cbItems1(int month) { ComboBoxItem cbItem = new ComboBoxItem(); cbItem.Content = month; comboBox1.Items.Add(cbItem); } public void cbItems2(int day) { ComboBoxItem cbItem = new ComboBoxItem(); cbItem.Content = day; comboBox2.Items.Add(cbItem); }
T

Tadas

6 лет назад

Ответов: 1

отображение изображений на основе выбора элемента комбобокса в WPF

У меня есть 3 комбобокса, как показано ниже, в разных местах с 3 изображениями под каждым комбобоксом. и код .cs private void Category1_Loaded(object sender, RoutedEventArgs e) { // ... A List. List data = new List(); data.Add("Category1_1"); data.Add("Category1_2"); // ... Get the ComboBox reference. var comboBox = sender as ComboBox; // ... Assign the ItemsSource to the List. comboBox.ItemsSource = data; // ... Make the first item selected. comboBox.SelectedIndex = 0; } private void Category2_Loaded(object sender, RoutedEventArgs e) { // ... A List. List data = new List(); data.Add("Category2_1"); data.Add("Category2_2"); // ... Get the ComboBox reference. var comboBox = sender as ComboBox; // ... Assign the ItemsSource to the List. comboBox.ItemsSource = data; // ... Make the first item selected. comboBox.SelectedIndex = 0; } private void Category3_Loaded(object sender, RoutedEventArgs e) { // ... A List. List data = new List(); data.Add("Category3_1"); data.Add("Category3_2"); // ... Get the ComboBox reference. var comboBox = sender as ComboBox; // ... Assign the ItemsSource to the List. comboBox.ItemsSource = data; // ... Make the first item selected. comboBox.SelectedIndex = 0; } Сейчас 3 комбобокса и изображения, как показано ниже Я хочу изменить или отобразить определенное изображение на основе выпадающего списка. Например, если я выбираю значение выпадающего списка Category1_1, он должен показать мне изображение c:\users\Category1_1.PNG. он должен показать мне изображение c:\users\Category1_1.PNG
N

Neo

6 лет назад

Ответов: 2

Java Получение выделенного комбинированного окна из другого класса

Новичок здесь. Сначала извините, если этот пост не соответствует правилам stackoverflow. Я хочу задать тот же вопрос (я думаю, что он имеет неправильный ответ), заданный 3 года назад из этого источника: источник stackoverflowКак получить выбранный элемент ComboBox из одного класса и использовать значение этого выбранного элемента в новом классе. Допустим, исходный класс и другой класс. Я хочу вывести элемент 3 (третий элемент в ComboBox) из исходного класса в другой класс.Я уже использовал ответ из вышеуказанного источника. Однако он возвращает только первый элемент. Потому что я думаю, что каждый раз, когда я вызываю конструктор из исходного класса, он будет перезапускать выбранный элемент на первый элемент.Как это сделать, если я использую javax.swing.JFrame (я использую Netbeans)? public class Source extends javax.swing.JFrame{ final JComboBox test = new JComboBox(); test.setModel(new DefaultComboBoxModel(new String[] {"Item 1", "Item 2", "Item 3"})); ... public String getSelectedItem() { return (String) test.getSelectedItem(); } Другой класс:public class Other extends javax.swing.JFrame{ public Other(){ Source sc = new Source(); String var = sc.getSelectedItem(); System.out.println(var); } } Допустим, я выбрал элемент 3 в классе Source. Так получит ли он элемент 3 в классе Other? Или я делаю неправильный конструктор? Извините за неудобства.
A

Arbintoro Mas

6 лет назад

Ответов: 1

Java Получение выбранного комбинированного окна из другого JFrame

Я здесь новичок. Извините за любой плохой пост или любые другие плохие вещи.Этот вопрос является продолжением этого вопроса на stackoverflow. И я уже знаю о проблеме JFrame JFrame Bad Practice. Проблема в том, что я новичок, использующий Netbeans для написания кода на Java. Все, что я знаю, это как сделать программу с помощью JFrame. Ниже приведен код, который я создал. Пожалуйста, помогите мне исправить его, чтобы цель моего кода (установить текст класса Answer из выделенного combobox класса TheCombo) была достигнута.Пожалуйста, исправьте эти коды (у меня 3 класса). Я хочу получить выбранный элемент ComboBox для использования в классе ответа. Основной класс:package testing; public class Testing { public static void main(String[] args) { new TheCombo().setVisible(true); } } Комбо класс:package testing; public class TheCombo extends javax.swing.JFrame { public TheCombo() { initComponents(); } public String getItem() { String theItem = jComboBox1.getSelectedItem().toString(); return theItem; } @SuppressWarnings("unchecked") // private void initComponents() { jComboBox1 = new javax.swing.JComboBox(); jButton1 = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jComboBox1.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Item 1", "Item 2", "Item 3", "Item 4" })); jButton1.setText("Go"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED) .addComponent(jButton1) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jComboBox1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jButton1)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); }// private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { new Answer().setVisible(true); this.dispose(); } public static void main(String args[]) { /* Set the Nimbus look and feel */ // /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(TheCombo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(TheCombo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(TheCombo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(TheCombo.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } // /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new TheCombo().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JButton jButton1; private javax.swing.JComboBox jComboBox1; // End of variables declaration } Другой класс (я хочу установить текст в JTextField1 с выбранным элементом из ComboBox в классе Combo):package testing; public class Answer extends javax.swing.JFrame { TheCombo tc = new TheCombo(); public Answer() { initComponents(); jTextField1.setText(tc.getItem()); } @SuppressWarnings("unchecked") // private void initComponents() { jTextField1 = new javax.swing.JTextField(); jButton1 = new javax.swing.JButton(); setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE); jTextField1.setHorizontalAlignment(javax.swing.JTextField.CENTER); jTextField1.setEnabled(false); jButton1.setText("Back"); jButton1.addActionListener(new java.awt.event.ActionListener() { public void actionPerformed(java.awt.event.ActionEvent evt) { jButton1ActionPerformed(evt); } }); javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane()); getContentPane().setLayout(layout); layout.setHorizontalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, 50, javax.swing.GroupLayout.PREFERRED_SIZE) .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED) .addComponent(jButton1) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); layout.setVerticalGroup( layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING) .addGroup(layout.createSequentialGroup() .addContainerGap() .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE) .addComponent(jTextField1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE) .addComponent(jButton1)) .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)) ); pack(); }// private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) { new TheCombo().setVisible(true); this.dispose(); } public static void main(String args[]) { /* Set the Nimbus look and feel */ // /* If Nimbus (introduced in Java SE 6) is not available, stay with the default look and feel. * For details see http://download.oracle.com/javase/tutorial/uiswing/lookandfeel/plaf.html */ try { for (javax.swing.UIManager.LookAndFeelInfo info : javax.swing.UIManager.getInstalledLookAndFeels()) { if ("Nimbus".equals(info.getName())) { javax.swing.UIManager.setLookAndFeel(info.getClassName()); break; } } } catch (ClassNotFoundException ex) { java.util.logging.Logger.getLogger(Answer.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (InstantiationException ex) { java.util.logging.Logger.getLogger(Answer.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (IllegalAccessException ex) { java.util.logging.Logger.getLogger(Answer.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } catch (javax.swing.UnsupportedLookAndFeelException ex) { java.util.logging.Logger.getLogger(Answer.class.getName()).log(java.util.logging.Level.SEVERE, null, ex); } // /* Create and display the form */ java.awt.EventQueue.invokeLater(new Runnable() { public void run() { new Answer().setVisible(true); } }); } // Variables declaration - do not modify private javax.swing.JButton jButton1; private javax.swing.JTextField jTextField1; // End of variables declaration }
A

Arbintoro Mas

6 лет назад

Ответов: 1

Почему мой combobox не отображает данные после выбора

У меня есть 2 комбобокса, которые связаны между собой, В родительском комбобоксе RoomT Type после выбора значения он не позволяет мне повторно выбрать другое значение. Также, если кто-нибудь будет так любезен и подскажет мне, как я могу использовать первичный ключ выбранного значения из комбобокса в SQL-запросах. Вот что у меня получилось : Private Sub FrmBookings_Load(sender As Object, e As EventArgs) Handles MyBase.Load Using con1 As New SQLiteConnection(ConStr) Using com As New SQLiteCommand("Select CustomerID, fname FROM customers Left JOIN BOOKING ON booking.BCustomerID = customers.customerID where booking.BookingID is null", con1) con1.Open() Dim dt As New DataTable() dt.Load(com.ExecuteReader) cmbCustomerData.DataSource = dt cmbCustomerData.DisplayMember = "fname" cmbCustomerData.ValueMember = "CustomerID" End Using End Using Using con1 As New SQLiteConnection(ConStr) Using da As New SQLiteDataAdapter("Select RoomTypeName, RoomTypeID FROM RoomType", con1) Dim dt As New DataTable() da.Fill(dt) cmbRoomType.Items.Clear() For Each row As DataRow In dt.Rows cmbRoomType.Items.Add(row("roomTypeName").ToString) Next End Using End Using End Sub Private Sub CmbRoomType_SelectedIndexChanged(sender As Object, e As EventArgs) Handles cmbRoomType.SelectedIndexChanged 'очистить dt cmbRoomType.Items.Clear() Using con1 As New SQLiteConnection(ConStr) Using da As New SQLiteDataAdapter("Select RoomNumber, RoomID FROM Rooms INNER JOIN RoomType ON roomtype.roomtypeid = rooms.rRoomTypeID WHERE roomtype.roomtypename LIKE '" & cmbRoomType.Text & "'", con1) Dim dt As New DataTable() da.Fill(dt) cmbRoomNumber.Items.Clear() For Each AB As DataRow In dt.Rows cmbRoomNumber.Items.Add(AB("RoomNumber").ToString())) Next End Using End Using End Sub
M

Milosz Laksa

год назад

Ответов: 1

2022 WebDevInsider