Idea 插件開發: Swing Designer設計器創建的組件全部為空問題記錄

問題現象

通過Swing 設計器創建的對象, Swing組件全部是空的, 導致ToolWindowFactory工廠的實現類調用時候出現了空指針異常
如下方式創建的
在這里插入圖片描述

問題分析

問題出現時候, 同時給我生成了一個createUIComponents的私有方法, 由于個人當時理解有誤, 把他當成了初始化方法, 在里面添加了一些代碼, 運行時候會跑異常

    // 為什么會生成 createUIComponents 方法, 是因為, 修改組件時候, 不知道改錯了什么位置, 被設識別成了自定義組件// 解決辦法就是刪除重新拖動組件, 自定義組件異常, 會印象swing designer生成其他組件, 導致其他組件也是空的private void createUIComponents() {// 異常代碼}

為什么會出現這樣的方法, 其實就是修改form文件時候, 導致無任務相關組件是自定義組件, 意思是我們自定義的組件需要在這個方法里面創建, 如果你的組件不是自定義組件, 可以刪除掉, 重新拖動組件, 這樣你的組件就不需要你自己使用這個私有方法完成初始化了

通過調式發現,只要你的組件不是自定義組件, 并且這個方法沒有拋異常,
在訪問組件(組件為空)時候就會自動初始化所有組件(猜測這里使用的是代理模式, 不是特別清楚這里的原理), 然后里面的ui對象都可以正常使用了

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/211878.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/211878.shtml
英文地址,請注明出處:http://en.pswp.cn/news/211878.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

Oracle高可用一家老小全在這里

📢📢📢📣📣📣 哈嘍!大家好,我是【IT邦德】,江湖人稱jeames007,10余年DBA及大數據工作經驗 一位上進心十足的【大數據領域博主】!😜&am…

用Java實現一對一聊天

目錄 服務端 客戶端 服務端 package 一對一用戶; import java.awt.BorderLayout; import java.io.BufferedReader; import java.io.IOException; import java.io.InputStreamReader; import java.io.PrintWriter; import java.net.ServerSocket; import java.net.Socket; imp…

s3-dist-cp 介紹教程示例使用方法

s3-dist-cp 是 AWS EMR 內置的用于 S3 和 HDFS 之間文件拷貝的專用工具,與 Hadoop 的 distcp 類似,也是通過 Map-Reduce 作業的方式實現分布式的文件復制(distcp 就是 distributed copy 分布式拷貝的意思)。 s3-dist-cp 并不是一個簡單的在 S3 和 HDFS 之間拷貝文件的工具…

SpringBoot中MyBatis-Flex的集成和使用

一、MyBatis-Flex 是什么? MyBatis-Flex是一個基于MyBatis的數據訪問框架,專門為Flex應用程序而設計的。它提供了一種靈活而高效的方式來處理Flex應用程序中的數據訪問,可以輕松地連接到各種數據源,并提供了一些方便的工具和功能&#xff0c…

虛擬機和主機間復制粘貼

文章目錄 前言一、版本介紹二、安裝工具1.確認配置2.安裝工具3.重啟 總結 前言 在Windows中使用虛擬機,可以很方便地linux,就像是在本地操作服務器一樣。 一、版本介紹 虛擬機:VMware 15 操作系統:CentOS 7 二、安裝工具 1.確…

delphi android打開外部文件,報錯android.os.FileUriExposedException解決方法

Android 7.0強制啟用了被稱作 StrictMode的策略,帶來的影響就是你的App對外無法暴露file://類型的URI了。 如果你使用Intent攜帶這樣的URI去打開外部App(比如:打開系統相機拍照),那么會拋出FileUriExposedException異常。 Delphi 為Android…

C++(14):通過tuple在構造對象時注入類型不確定的對象/插件

有的時候我們需要在構建對象時注入一系列類型不確定的對象或插件,怎么才能實現呢? #include <iostream> #include <string> #include <tuple>using namespace std;class A{ public:A(int a) : m_a(a){cout<<"construct A:"<<m_a<…

windows系統安裝RocketMQ_dashboard

1.下載源碼 按照官網說明下載源碼 官網 官網文檔 2.源碼安裝 2.1.① 編譯rocketmq-dashboard 注釋掉報錯的maven插件frontend-maven-plugin、maven-antrun-plugin mvn clean package -Dmaven.test.skiptrue2.2.② 運行rocketmq-dashboard java -jar target/rocketmq-…

Qt基礎-connect函數詳解

本文詳解Qt的connect函數用法。 目錄 定義 形式 函數原型 實例說明 定義 Qt中的信號槽為核心內容,一定要熟練掌握。鏈接信號使用connect函數。 QObject::connect函數,顧名思義,鏈接函數,作用是鏈接信號(signal)和槽(

tamcat亂碼

學習springmvc時tamcat亂碼 ①、啟動時tomcat控制臺亂碼 解決方法是&#xff1a;1、先把idea設置里的默認字節碼改成utf-8 ? 2、把idea顯示編碼改成utf-8&#xff0c;在末尾加上&#xff08; -Dfile.encodingUTF-8&#xff09; ? 3、最后重啟idea 加上這個 -Dfile.encodingU…

CSS基礎概念之選擇器類型

CSS選擇器類型 選擇器表示元素在樹結構中的特定模式。選擇器(selector)術語指的是&#xff0c;簡單選擇器(simple selector)&#xff0c;復合選擇器(compound selector)&#xff0c;復雜選擇器(complex selector)&#xff0c;或者選擇器列表(selector list)。選擇器的主題是任…

【軟考中級——軟件設計師】備戰經驗 筆記總結分享

考試成績 我第一次備考是在2022 然后那時候取消了這次是第二次 靠前我一個月復習的看了以前的筆記 然后刷了七八道歷年題目學習資料推薦 &#xff1a;zst——2021 b站鏈接自薦一下我的筆記 &#xff1a; 軟考筆記專欄 視頻確實很長 &#xff0c; 我的建議就是先看筆記 然后不會…

OD機考真題搜集:歡樂的周末

題目 小華和小為是很要好的朋友,他們約定周末一起吃飯。通過手機交流,他們在地圖上選擇了多個聚餐地點(由于自然地形原因,部分聚餐地點不可達),求小為和小華都可以到達的聚餐地點有多少個? 輸入 第一行輸入m,n,分別代表地圖的長度和寬度 第二行開始輸入具體地圖信息…

1-2、Java環境搭建

語雀原文鏈接 文章目錄 1、JDK安裝2、Hello World2-1、Hello World示例2-2、類名和文件名2-3、注釋2-4、javadoc 3、環境變量3-1、Path作用3-2、classpath3-3、JAVA_HOME 4、Java組成5、跨平臺原理5-1、Java跨平臺原理5-2、C語言的跨平臺原理 1、JDK安裝 下載地址&#xff1a…

打造Github首頁的動態飛線效果

一、導語 Github首頁的地球動態飛線&#xff0c;大家都比較熟悉吧 二、分析 由大量隨機的3點構造出貝塞爾曲線&#xff0c;然后開始從起點到終點的飛行后&#xff0c;然后再從起點到終點的消失&#xff0c;就此完成整個過程 三、基礎代碼 createCurve(startPoint, endPoint…

unity 2d 入門 飛翔小鳥 死亡閃爍特效(十三)

一、c#腳本 using System.Collections; using System.Collections.Generic; using UnityEngine;public class Bling : MonoBehaviour {public Texture img;public float speed;public static bool changeWhite false;private float alpha0f;// Start is called before the fi…

信創運維產業的發展與趨勢:IT管理的新視角

隨著數字化時代的來臨&#xff0c;信息技術應用的各個方面都在發生變革。在這個過程中&#xff0c;信創運維產業的發展尤為引人注目。它不僅是數字化轉型的關鍵驅動力&#xff0c;也是國家經濟發展的重要支柱。本文將探討信創運維產業的發展與趨勢&#xff0c;以及國家如何管理…

芯片量產導入知識

什么是芯片量產 從芯片功能設計到生產制造、測試等環節&#xff0c;每一個環節都至關重要。 對于保障大規模發貨后芯片指標表現的一致性&#xff0c;以及產品應用生命周期內的穩定性和可靠性&#xff0c;需要考慮多種因素。以下是一些相關的觀點&#xff1a; 可量產性設計&am…

Stable Diffusion 系列教程 - 2 WebUI 參數詳解

Stable Diffusion 的整個算法組合為&#xff1a; UNet VAE 文本編碼器 UNet&#xff1a;就是我們大模型里的核心。 文本編碼器&#xff1a;將我們的prompt進行encoder為算法能理解的內容&#xff08;可以理解為SD外包出去的項目CLIP&#xff09;。 VAE&#xff1a;對UNet生…

【牛牛送書 | 第三期】《一本書講透Java線程:原理與實踐》帶你深入JAVA多線程

目錄 摘要&#xff1a; 多線程對于Java的意義 為什么Java工程師必須掌握多線程 Java多線程使用方式 如何學好Java多線程 參與方式&#x1f947; 摘要&#xff1a; 互聯網的每一個角落&#xff0c;無論是大型電商平臺的秒殺活動&#xff0c;社交平臺的實時消息推送&#x…