Rumah >Java >javaTutorial >Bagaimana untuk Mendapatkan Indeks Baris Kotak Kombo Jadual Mencetuskan ItemEvent?

Bagaimana untuk Mendapatkan Indeks Baris Kotak Kombo Jadual Mencetuskan ItemEvent?

DDD
DDDasal
2024-12-13 19:28:10314semak imbas

How to Retrieve the Row Index of a Table ComboBox Triggering an ItemEvent?

Mendapatkan semula CellRow ItemEvent dalam Table ComboBox

Apabila bekerja dengan JTable yang mengandungi lajur dengan Combo Box, anda mungkin perlu dapatkan baris ComboBox yang mencetuskan ItemEvent. Walau bagaimanapun, ItemListener tidak mempunyai kaedah untuk ini.

Cara Menentukan CellRow

Untuk mendapatkan semula baris yang dikehendaki, pertimbangkan pilihan berikut:

Menggunakan TableCellEditor

Dalam "Menggunakan Kotak Kombo sebagai Editor," kaedah getTableCellEditorComponent() TableCellEditor termasuk baris sebagai parameter. Kaedah ini boleh digunakan untuk mengakses baris.

Menyegerakkan Lajur Bersandar

Menggunakan Kaedah getValueAt()

Oleh mengatasi kaedah getValueAt() model, anda boleh mewujudkan hubungan antara lajur ComboBox dan lajur lain dalam baris yang sama. Kod diubah suai:

import java.awt.*;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import java.io.IOException;
import javax.swing.*;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;

public class DependentColumn extends JFrame {

    private static final int DEPENDENT_COL = 1;
    private static final int ITEM_COL = 2;
    private static final String[] columnNames = {"Col 1", "Col 2", "Col 3"};

    public static void main(String args[]) throws IOException {
        EventQueue.invokeLater(new Runnable() {

            @Override
            public void run() {
                DependentColumn dc = new DependentColumn();
            }
        });
    }

    public DependentColumn() {

Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Indeks Baris Kotak Kombo Jadual Mencetuskan ItemEvent?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn