Rumah > Java > javaTutorial > teks badan

Bagaimanakah anda menghantar data dari JTable dalam satu JFrame ke medan teks dalam JFrame yang lain?

Barbara Streisand
Lepaskan: 2024-10-26 19:00:30
asal
399 orang telah melayarinya

How do you pass data from a JTable in one JFrame to text fields in another JFrame?

Melalui Data Antara JFrames

Dalam senario ini, anda mempunyai dua JFrames: frame1, yang termasuk medan teks dan frame2, yang mengandungi kotak carian dan JTable yang mengandungi hasil carian. Matlamat anda adalah untuk mencerminkan nilai yang dipilih daripada JTable dalam medan teks frame1.

Rujukan Objek dan Komunikasi

Soalan anda menyebut objek frame1 yang lulus sebagai parameter, tetapi adalah penting untuk memahami bahawa menghantar rujukan antara objek GUI mengikut prinsip yang sama seperti menghantar rujukan dalam kod Java bukan GUI. Rujukan kepada JFrame kedua (frame2) biasanya boleh diakses dalam JFrame pertama (frame1), membolehkan anda menggunakan kaedahnya secara langsung.

Akses Negeri Merentas Tetingkap

Masa untuk mengakses keadaan satu tetingkap dari yang lain bergantung pada hubungan tetingkap. Untuk dialog modal, tetingkap pertama boleh mendapatkan semula data serta-merta selepas dialog kembali, iaitu kod yang dilaksanakan selepas menetapkan dialog kelihatan.

Untuk dialog bukan modal, anda sering bergantung pada pendengar untuk menentukan masa untuk mengekstrak maklumat.

Contoh: Menghantar Teks Antara Windows

Untuk menggambarkan konsep ini, pertimbangkan contoh berikut:

<code class="java">import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

import javax.swing.*;

public class WindowCommunication {

    public static void main(String[] args) {
        JFrame frame1 = new JFrame("Frame 1");
        frame1.getContentPane().add(new JLabel("Text: "));
        frame1.getContentPane().add(new JTextField(10));
        JButton button = new JButton("Open Frame 2");
        button.addActionListener(new ActionListener() {
            @Override
            public void actionPerformed(ActionEvent e) {
                JDialog frame2 = new JDialog(frame1, "Frame 2");
                frame2.getContentPane().add(new JTextField(10));
                frame2.pack();
                frame2.setVisible(true);
            }
        });
        frame1.getContentPane().add(button);
        frame1.pack();
        frame1.setLocationRelativeTo(null);
        frame1.setVisible(true);
    }
}</code>
Salin selepas log masuk

Dalam contoh ini, apabila butang dalam bingkai1 diklik, bingkai JDialog2 dibuka. Rujukan kepada frame2 dipegang oleh frame1, membenarkan yang terakhir mengakses dan memanipulasi teks dalam JTextField dalam frame2.

Begitu juga, anda boleh mendapatkan data daripada JTable dalam senario khusus anda dengan menggunakan teknik berasaskan pendengar untuk tentukan bila baris yang dikehendaki dipilih dalam jadual.

Atas ialah kandungan terperinci Bagaimanakah anda menghantar data dari JTable dalam satu JFrame ke medan teks dalam JFrame yang lain?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!