java - 使用 javapanel 的元素

标签 java swing jframe jpanel

我有一个主JFrame,它由3个小JPanel组成,它们根据用户的选择进行切换。

问题是我必须将插入 JPanel 的数据保存到数据库中,但我无法直接访问 JPanel 的元素。那么我该如何接受这些。

当点击主框架中的“ACCEPT”按钮时,数据库中的条目就完成了。 请帮忙

if(Selected==Credit Card){
    Select Credit Card Panel;
    }
if(Selected==Debit Card){
    Select Debit Card Panel;
    }
if(Selected==Cash on Delivery){
    Select Cash on Delivery Panel;
    }



onAccept(){
    if(Selected==Credit Card){
get data from Credit Card panel and store in Database; (variables like cc number, cvv)
}

if(Selected==Debit Card){
get data from Debit Card panel and store in Database;
}

if(Selected==Cash on Delivery){
get data from Cash on Delivery Card panel and store in Database;
}
    }

最佳答案

让 3 个面板均实现相同的界面:

public interface DataStorer {
    public void storeDataInDatabase();
}

然后,当单击接受按钮时,调用:

DataStorer selectedPanel = (DataStorer) theDisplayedPanel;
selectedPanel.storeDataInDatabase();

关于java - 使用 javapanel 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14788842/

相关文章:

java - 用于检查 API 与 Android 的兼容性的 Maven 插件

java - GCM CCS 服务器实现未接收上游消息

java - 当自定义对象属性更改时更新 JLabel

java - java中的文本转图像

java - Java 中的太空入侵者...组件或绘制

java - 如何使用 Runnable 方法将 JPanel 添加到 JFrame

java - Woocommerce 添加到购物车按钮丢失。 (是的,另一个)

java - 将对象传递给新 Activity 返回 null

java - 将 .swf 文件嵌入到我的 Jframe 中

java - 如何使用 JFrame、JLabel、使用 setForeground 创建颜色模拟?