第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號(hào)安全,請(qǐng)及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會(huì)有你想問的

動(dòng)態(tài)刪除Java Swing容器(我的代碼在按下按鈕時(shí)掛起)

動(dòng)態(tài)刪除Java Swing容器(我的代碼在按下按鈕時(shí)掛起)

一只萌萌小番薯 2021-05-13 17:26:44
我正在嘗試實(shí)現(xiàn)一些我認(rèn)為應(yīng)該很容易實(shí)現(xiàn)的功能,但是我無法使其正常運(yùn)行。我有一個(gè)Jframe,其中包含2個(gè)JPanel。我想在其中一個(gè)單擊的JPanel中具有一個(gè)按鈕,該按鈕將從JFrame中刪除該JPanel。(我現(xiàn)在正在做概念驗(yàn)證,將來會(huì)有更多的JPanel)。buttonRemove.addActionListener( (e) -> {    buttonRemove.getParent().getParent().remove(buttonRemove.getParent());});是我的ActionListener,它使程序掛起。我在這里理解錯(cuò)了什么?做我想做的最佳實(shí)踐是什么?編輯:FractalBuilder extends JFrame{    public JPanel image;    public JPanel fonction;    public FractalBuilder(){       setLayout( new BorderLayout() );       fonction = new JPanel();       JButton buttonRemove = new JButton(Remove);       buttonRemove.addActionListener( (e) -> {           buttonRemove.getParent().getParent().remove(buttonRemove.getParent());       });       fonction.setLayout(new GridBagLayout());       GridBagConstraints gbc = new GridBagConstraints;       fonction.add(buttonRemove, gbc);       add(fonction, BORDER_LAYOUT.WEST);       add(image, BORDER_LAYOUT.EAST);}我添加了我認(rèn)為可能相關(guān)的代碼,但是如果需要的話,將為完整的源代碼添加github鏈接。
查看完整描述

1 回答

?
猛跑小豬

TA貢獻(xiàn)1858條經(jīng)驗(yàn) 獲得超8個(gè)贊

從可見的GUI面板添加/刪除組件時(shí),基本邏輯是:


panel.remove(...);

panel.add(...);

panel.revalidate();

panel.repaint();

您需要revalidate()來調(diào)用布局管理器,并需要repaint()來確保所有組件都使用新的布局重新繪制。


查看完整回答
反對(duì) 回復(fù) 2021-05-26
  • 1 回答
  • 0 關(guān)注
  • 216 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號(hào)

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號(hào)