簡體   English   中英

Java中的GUI接口類?

[英]Interface class with gui in java?

我的問題是關於在Java中將接口類與圖形用戶界面一起使用。

現在我有接口類,它具有這樣的方法:

public interface management
{
    public void loginActionPerformed(java.awt.event.ActionEvent evt);
}

然后我創建一個實現該接口的類,但是該類是使用gui設計編寫的,並且具有一個將實現方法login的按鈕

問題:按鈕方法是私有的,不能轉換為公共按鈕,因為iam使用拖放進行設計。

如何解決此問題或如何在GUI設計中使用接口類?

具有設計的類的代碼:

public class employee extends javax.swing.JFrame implements management
{
private void loginActionPerformed(java.awt.event.ActionEvent evt) {
   // implementation 
   }
}

Java不允許在接口中使用私有方法

一個可能的解決方法是在接口中使用另一個方法名稱,並在實現中委托:

public class Employee extends javax.swing.JFrame implements Management
{
   @Override
   public void myLoginActionPerformed(java.awt.event.ActionEvent evt) {
       loginActionPerformed(evt);
   }

   // @javax.annotation.Generated 
   private void loginActionPerformed(java.awt.event.ActionEvent evt) {
       // implementation 
   }
}

public interface Management
{
    void myLoginActionPerformed(java.awt.event.ActionEvent evt);
}

終於我找到了我的問題的解決方案:

接口類如下:

public interface Management
{
     public void login(Account a); // object from a class instead of gui frame.
}

該類實現了接口:

public class Employee extends javax.swing.JFrame implements Management
{
    private void loginActionPerformed(java.awt.event.ActionEvent evt) {
    Account a = new Account();
    login(a); 
    // button method that should clicked on.
   }
}

 public void login(Account a)
 {
     // implementation of what button should do when clicked on.
 }

特別感謝@RC :)

暫無
暫無

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

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