簡體   English   中英

將變量從一個jframe傳遞到另一個jframe而不關閉它們

[英]Passing variable from one jframe to another without closing any them

我正在制作數據庫應用程序,我對這個問題持續了一個星期。 我也不確定如何在我的問題上發布標題,但我希望你能理解。 我有兩個框架:城市和國家。

城市框架:

在此輸入圖像描述 國家框架:

在此輸入圖像描述

當我點擊城市框架中的“搜索”按鈕時,它會打開一個國家框架。 當我單擊Country框架中的表時,它會通過此方法將選定行和列“Country”中的值傳遞給變量tableValCountry:

table.addMouseListener(new MouseListener(){

        @Override
        public void mouseClicked(MouseEvent e) {
            int selRow = table.getSelectedRow();

            String tableValCountry = (String)table.getValueAt(selRow, 1);
        }

        @Override
        public void mouseEntered(MouseEvent e) {
        }

        @Override
        public void mouseExited(MouseEvent e) {
        }

        @Override
        public void mousePressed(MouseEvent e) {
        }

        @Override
        public void mouseReleased(MouseEvent e) {
        }});

然后我想將tableValCountry變量傳遞給City框架,並通過單擊添加按鈕更新其中一個textfield。 我怎樣才能做到這一點? 提前致謝。

PS我可以用getter和setter做到這一點,但我需要在City框架中有一些“獲取”按鈕來檢索值(我不想這樣做)。 並且City框架必須始終可見。

Swing的做事方式是讓搜索面板實現一個getSelectedCountry()方法和一個在用戶選擇國家時通知的監聽器列表。

當用戶單擊搜索時,您的主要組件將創建搜索面板並將其自身注冊為搜索面板事件的偵聽器。 事件處理程序將獲取搜索面板的選定國家/地區並填充文本字段。

搜索面板實現只需在用戶選擇國家時通知其所有偵聽器。

我認為這篇文章很好地涵蓋了它。

請參閱使用多個JFrame,好/壞練習?

對於這個用例,模態對話框將是完美的。 在對話框設置為可見后,可以在該行中查詢這些值。

我面臨同樣的問題,但我的替代解決方案是線程機制

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM