2
我必須創建一個帶有自定義最大化/最小化和關閉按鈕的Matlab圖形窗口。爲此,我使用了JWindow窗口。我不得不添加一個JPanel,因爲這是我可以改變背景顏色的唯一方法(我不明白爲什麼會發生這種情況)。現在,我想添加Matlab uipanels組件。然而,當我嘗試這樣做,我得到以下錯誤:將Matlab組件添加到Java JWindow
??? Error using ==> uipanel
An object of class uipanel, can not be a child of class javax.swing.JPanel.
這裏是我的代碼:
import javax.swing.*;
import java.awt.*;
jW = JWindow;
jW.setAlwaysOnTop(true);
jW.setSize(200,200);
jW.setLocation(0,0);
panel = javaObjectEDT('javax.swing.JPanel');
panel.setBackground(java.awt.Color.black);
jW.getContentPane().add(panel);
ph = uipanel('Parent',panel,'Units','pixels','Position',[0 0 100 100]);
jW.setVisible(true);
我不知道如何解決這個問題。
您不能將uipanel添加到JPanel或任何其他Java容器。一個更好的方法,儘管仍然是hacky,但會得到數字窗口的JFrame的句柄並更改那裏的按鈕。 – Kavka 2012-03-04 17:21:41
非常感謝您的評論。 – julian 2012-03-16 12:24:41