簡體   English   中英

我如何獲得JtabbedPane內部的jPanel

[英]how can i get a jPanel that is inside a JtabbedPane

我正在用Java開發圖像編輯器,我在JTabbedPane中插入了一個JPanel,以創建一個JTabbedPane,它的選項卡呈現了我想應用到圖像的圖像濾鏡,我不知道如何獲取內部的JPanel選擇TabbedPane來決定篩選器,因為當我執行“ jTabbedPane1.getSelectedComponent();”時,我只能獲得一個組件,而不是JComponent。

任何人都知道,對不起我的英語,謝謝。

這是我的代碼的一部分:

package javaapplication22;

import javax.swing.JPanel;

/**
 *
 * @author iDoc
 */
public abstract class FilterTab extends JPanel {

    public FilterTab() {

    }

    protected void ApplyFilter() {

    }

    protected void ResetFilter() {

    }

}

public class InvertFilterTab extends FilterTab {

    private InvertFilter filter;

    public InvertFilterTab ()
    {
        filter = new InvertFilter();
    }

    /**
     *
     * @param originalImage
     * @param modifiedImage
     */
    public void ApplyFilter(BufferedImage originalImage, BufferedImage modifiedImage) {
        modifiedImage = filter.filter(originalImage, modifiedImage);
    }

    @Override
    public void ResetFilter() {

    }

}

private void button1ActionPerformed(java.awt.event.ActionEvent evt) {                                        

    BufferedImage originalImage = jOriginalPanel.getImage();
  //  BufferedImage modifiedImage = new BufferedImage(
    //        originalImage.getWidth(), originalImage.getHeight(), 
      //      BufferedImage.TYPE_INT_ARGB);
    //modifiedImage = 

    FilterTab ft = jTabbedPane1.getSelectedComponent();   <--- the problem is here

            filter.filter(originalImage, modifiedImage);

    jModifiedPanel.changeImage(modifiedImage);
    jModifiedPanel.repaint();

簡單地轉換結果...

FilterTab tab = (FilterTab)jTabbedPane1.getSelectedComponent();

記住, JPanelJComponent擴展而來, JComponentContainer擴展而來, ContainerComponent擴展而來

暫無
暫無

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

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