pbootcms网站模板|日韩1区2区|织梦模板||网站源码|日韩1区2区|jquery建站特效-html5模板网

如何在 Swing 應用程序中正確放置 libgdx 應用程序

How to put properly a libgdx application inside swing application?(如何在 Swing 應用程序中正確放置 libgdx 應用程序?)
本文介紹了如何在 Swing 應用程序中正確放置 libgdx 應用程序?的處理方法,對大家解決問題具有一定的參考價值,需要的朋友們下面隨著小編來一起學習吧!

問題描述

限時送ChatGPT賬號..

我正在為我的游戲創建關卡編輯器,但我在使用帶有 JFrame 的 LwjglCanvas 時遇到了問題.我使用 JFrame(不是 LwjglFrame)來保持引擎和關卡編輯器盡可能獨立.我有兩個 JAR:WorldEditor.jar 和 GameEngine.jar.在 WorldEditor 中,我有一個名為test"的按鈕,假設加載 GameEngine.jar(如果尚未加載)并啟動(如果已加載則重新啟動)到應用程序主框架中.實際上,我所做的是將 WorldEditor 游戲容器(例如 JFrame 內的 JPanel)注入游戲應用程序,并使用 Gdx.app.postRunnable 將 lwjglcanvas 添加到注入的游戲容器中:

I'm creating a level editor for my game, and I ave a problem using LwjglCanvas with a JFrame. I use a JFrame (not a LwjglFrame) to keep engine and level editor as independent as possible. I have two JARs: WorldEditor.jar, and GameEngine.jar. Inside WorldEditor, I have a button called "test", that is suppose to load GameEngine.jar (if not already loaded) and launch (resart it if already loaded) it into the application main frame. Actually, what I do is injecting the WorldEditor game container (a JPanel inside the JFrame for example) to the game app, and use Gdx.app.postRunnable to add the lwjglcanvas to the injected game container :

世界編輯端:

JPanel _gameContainer = new JPanel(); // is inside a JFrame
MyGame game = loadGame(_gameContainer); // load the GameEngine JAR, and retrive the game

GameEngine 方面:

GameEngine side:

// container is the _gamecontainer of above
public void createGame(final Container gameContainer)  
{
    LwjglCanvas canvas = new LwjglCanvas(myapp, myconfig);
    Gdx.app.postRunnable(new Runnable()
    {
       public void run()
       {
           gameContainer.add(canvas.getCanvas());
       }
    });
}

事實是 postRunnable 從未被調用(由于應用程序在可見之前不可見,我錯了嗎?)我已經嘗試了很長時間,但沒有結果......

The fact is that the postRunnable is never called (due to the fact that the app doesn't before being visible, am I wrong ?) I have been trying for a long time but no result ...

有人知道我可以做些什么來解決這個問題嗎?或者至少是另一種(讓我們說更簡單)的方法來做到這一點?

Does someone have an idea of what I could do to fix this problem ? Or a least another (let's say easier) method to do that ?

推薦答案

你必須使用 SwingUtilites.invokelater 因為 postRunnable 發布到沒有運行的游戲循環.我會嘗試從 MyGame 獲取一個組件并添加它.如果你返回一個組件,你就沒有一個 dep.到 LwjglCanvas.這不是很好,因為現在 MyGame 界面有一個 dep.揮桿,但值得一試,看看它是否能解決你的問題.

You have to use SwingUtilites.invokelater because postRunnable posts to the game loop which is not running. I would try to get a Component from MyGame and add this. If you return a Component you don't have a dep. to the LwjglCanvas. It's not that nice because now the MyGame Interface has a dep. to swing but it's worth a shot to see if its solves your problem.

這篇關于如何在 Swing 應用程序中正確放置 libgdx 應用程序?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!

【網站聲明】本站部分內容來源于互聯網,旨在幫助大家更快的解決問題,如果有圖片或者內容侵犯了您的權益,請聯系我們刪除處理,感謝您的支持!

相關文檔推薦

Parsing an ISO 8601 string local date-time as if in UTC(解析 ISO 8601 字符串本地日期時間,就像在 UTC 中一樣)
How to convert Gregorian string to Gregorian Calendar?(如何將公歷字符串轉換為公歷?)
Java: What/where are the maximum and minimum values of a GregorianCalendar?(Java:GregorianCalendar 的最大值和最小值是什么/在哪里?)
Calendar to Date conversion for dates before 15 Oct 1582. Gregorian to Julian calendar switch(1582 年 10 月 15 日之前日期的日歷到日期轉換.公歷到儒略歷切換)
java Calendar setFirstDayOfWeek not working(java日歷setFirstDayOfWeek不起作用)
Java: getting current Day of the Week value(Java:獲取當前星期幾的值)
主站蜘蛛池模板: 净化工程_无尘车间_无尘车间装修-广州科凌净化工程有限公司 | 工装定制/做厂家/公司_工装订做/制价格/费用-北京圣达信工装 | 生鲜配送系统-蔬菜食材配送管理系统-连锁餐饮订货配送软件-挪挪生鲜供应链管理软件 | 手持式浮游菌采样器-全排二级生物安全柜-浙江孚夏医疗科技有限公司 | 新车测评网_网罗汽车评测资讯_汽车评测门户报道 | 高压无油空压机_无油水润滑空压机_水润滑无油螺杆空压机_无油空压机厂家-科普柯超滤(广东)节能科技有限公司 | 上海单片机培训|重庆曙海培训分支机构—CortexM3+uC/OS培训班,北京linux培训,Windows驱动开发培训|上海IC版图设计,西安linux培训,北京汽车电子EMC培训,ARM培训,MTK培训,Android培训 | 锤式粉碎机,医药粉碎机,锥式粉碎机-无锡市迪麦森机械制造有限公司 | 国资灵活用工平台_全国灵活用工平台前十名-灵活用工结算小帮手 | 哈希余氯测定仪,分光光度计,ph在线监测仪,浊度测定仪,试剂-上海京灿精密机械有限公司 | 精密线材测试仪-电线电缆检测仪-苏州欣硕电子科技有限公司 | TPE_TPE热塑性弹性体_TPE原料价格_TPE材料厂家-惠州市中塑王塑胶制品公司- 中塑王塑胶制品有限公司 | 座椅式升降机_无障碍升降平台_残疾人升降平台-南京明顺机械设备有限公司 | 尊享蟹太太美味,大闸蟹礼卡|礼券|礼盒在线预订-蟹太太官网 | 色油机-色母机-失重|称重式混料机-称重机-米重机-拌料机-[东莞同锐机械]精密计量科技制造商 | POS机办理_个人pos机免费领取-银联pos机申请首页 | 雄松华章(广州华章MBA)官网-专注MBA/MPA/MPAcc/MEM辅导培训 | 一体化污水处理设备,一体化污水设备厂家-宜兴市福源水处理设备有限公司 | 楼梯定制_楼梯设计施工厂家_楼梯扶手安装制作-北京凌步楼梯 | 智慧钢琴-电钢琴-便携钢琴-数码钢琴-深圳市特伦斯乐器有限公司 | 胶原检测试剂盒,弹性蛋白检测试剂盒,类克ELISA试剂盒,阿达木单抗ELISA试剂盒-北京群晓科苑生物技术有限公司 | 【星耀裂变】_企微SCRM_任务宝_视频号分销裂变_企业微信裂变增长_私域流量_裂变营销 | 尊享蟹太太美味,大闸蟹礼卡|礼券|礼盒在线预订-蟹太太官网 | 合肥注册公司|合肥代办营业执照、2024注册公司流程 | 美侍宠物-专注宠物狗及宠物猫训练|喂养|医疗|繁育|品种|价格 | 精密五金冲压件_深圳五金冲压厂_钣金加工厂_五金模具加工-诚瑞丰科技股份有限公司 | 磁力抛光研磨机_超声波清洗机厂家_去毛刺设备-中锐达数控 | 盛源真空泵|空压机-浙江盛源空压机制造有限公司-【盛源官网】 | 螺杆泵_中成泵业 | 中国品牌门窗网_中国十大门窗品牌_著名门窗品牌 | 天津次氯酸钠酸钙溶液-天津氢氧化钠厂家-天津市辅仁化工有限公司 | 气动隔膜泵-电动隔膜泵-循环热水泵-液下排污/螺杆/管道/化工泵「厂家」浙江绿邦 | 高压直流电源_特种变压器_变压器铁芯-希恩变压器定制厂家 | 国际线缆连接网 - 连接器_线缆线束加工行业门户网站 | 酵素生产厂家_酵素OEM_酵素加盟_酵素ODM_酵素原料厂家_厦门益力康 | 利浦顿蒸汽发生器厂家-电蒸汽发生器/燃气蒸汽发生器_湖北利浦顿热能科技有限公司官网 | 临海涌泉蜜桔官网|涌泉蜜桔微商批发代理|涌泉蜜桔供应链|涌泉蜜桔一件代发 | 博莱特空压机|博莱特-阿特拉斯独资空压机品牌核心代理商 | 冷柜风机-冰柜电机-罩极电机-外转子风机-EC直流电机厂家-杭州金久电器有限公司 | 万家财经_财经新闻_在线财经资讯网 | 硬度计_影像测量仪_维氏硬度计_佛山市精测计量仪器设备有限公司厂家 |