{eval=Array;=+count(Array);}

成人无码视频,亚洲精品久久久久av无码,午夜精品久久久久久毛片,亚洲 中文字幕 日韩 无码

問(wèn)答專欄Q & A COLUMN

怎么使用編程語(yǔ)言程序“實(shí)現(xiàn)可視化界面”?

wfc_666wfc_666 回答3 收藏1
問(wèn)題描述:怎么使用編程語(yǔ)言,如使用c語(yǔ)言、c++、python等編程語(yǔ)言的程序?qū)崿F(xiàn)可視化界面,使的更方便、快捷的實(shí)現(xiàn)命令操作?
收藏問(wèn)題

3條回答

firim

firim

回答于2022-06-22 19:15

你說(shuō)的是桌面GUI程序開(kāi)發(fā)吧,目前來(lái)說(shuō),用c語(yǔ)言來(lái)做桌面GUI程序開(kāi)發(fā)的不多,主要做底層開(kāi)發(fā),下面我主要介紹一下c++和Python主流的做桌面GUI開(kāi)發(fā)的一些框架和庫(kù),主要如下:

  • c++開(kāi)發(fā)GUI

1.第一個(gè)比較經(jīng)典的框架了,相信大部分初學(xué)c++的GUI開(kāi)發(fā)的人都學(xué)過(guò),微軟自己推出

的開(kāi)發(fā)框架,在vc,vs中經(jīng)常用到,微軟基礎(chǔ)類庫(kù)MFC,封裝了底層Windows API,可以明顯降低開(kāi)發(fā)人員的工作量,但是只能在windows平臺(tái)下使用,不具有跨平臺(tái)性,而且就目前來(lái)說(shuō),靈活性不是很高,過(guò)程設(shè)計(jì)的有些繁瑣:

2.Qt,這是一個(gè)跨平臺(tái)的c++圖形用戶開(kāi)發(fā)框架,易學(xué)易用,很快就能上手,相對(duì)于MFC來(lái)說(shuō),學(xué)起來(lái)能更快一些,比較簡(jiǎn)單,自帶的Qt Designer可以更快的設(shè)計(jì)用戶界面,更靈活,也更方便:

  • python開(kāi)發(fā)GUI

1.第一個(gè)就是python自帶的Tkinter包,基本可以滿足小的GUI程序的開(kāi)發(fā),但是資料比較少,開(kāi)發(fā)起來(lái)也不夠靈活:

2.就是wxPython,這個(gè)包的功能相對(duì)于Tkinter來(lái)說(shuō),功能能更強(qiáng)大一些,也能靈活一些,網(wǎng)上的教程和例子也挺多的:

3.最后就是PyQt,這個(gè)是Qt提供給python的一個(gè)接口包,專門為了python開(kāi)發(fā)GUI程序,功能很強(qiáng)大也很靈活,只要你有一定的Qt基礎(chǔ),很快就能掌握:

其實(shí)python還有許多開(kāi)發(fā)GUI程序的包,像kivy,pygame等,都可以開(kāi)發(fā)GUI程序,我這里就不贅述了,感興趣的話可以到官網(wǎng)搜搜相關(guān)資料和文檔,挺多的。

桌面GUI程序開(kāi)發(fā),其實(shí)幾乎每門主流語(yǔ)言都有對(duì)應(yīng)的框架或包直接來(lái)用,我這里就大概介紹了c++和python兩種語(yǔ)言常用的框架和包,像C#,java等,都有對(duì)應(yīng)的包或類直接可以調(diào)用使用,開(kāi)發(fā)起來(lái)GUI程序也很快,我這里就不詳細(xì)介紹了,可以到網(wǎng)上搜搜相關(guān)教程和例子,希望以上分享的內(nèi)容能對(duì)你有所幫助吧。

評(píng)論0 贊同0
  •  加載中...
beanlam

beanlam

回答于2022-06-22 19:15

謝邀,作為一名一線研發(fā)工程師,下面對(duì)市面上常見(jiàn)的如何選擇C++、Python等編程語(yǔ)言完成可視化界面編程進(jìn)行介紹,歡迎大家留言探討。


C/C++

對(duì)于那些追求極致開(kāi)發(fā)效率的桌面應(yīng)用程序,C++絕對(duì)是你的首選編程語(yǔ)言。下面對(duì)常用的界面庫(kù)進(jìn)行介紹。

1、QT

C++開(kāi)發(fā)界面首選開(kāi)源庫(kù)??缙脚_(tái)支持,文檔齊全,API設(shè)計(jì)優(yōu)雅,它不僅僅是一套界面庫(kù),更封裝了多線程、訪問(wèn)數(shù)據(jù)庫(kù)、圖像處理、音頻視頻處理、網(wǎng)絡(luò)通信、文件操作等接口。


QT最近在跟車企進(jìn)行合作,很多監(jiān)控設(shè)備的圖形化展示,甚至是試驗(yàn)車內(nèi)部的液晶儀表盤上都使用QT進(jìn)行開(kāi)發(fā)的,QT最大的優(yōu)勢(shì)就是跨平臺(tái)!高效率!


QT中甚至可以直接使用JavaScript,這對(duì)我們的一些混合編程場(chǎng)景提供了極大的便利。


QT提供的QSS(Qt Style Sheet,Qt樣式表)可以讓我們像寫Web界面中的CSS那樣開(kāi)發(fā)桌面應(yīng)用程序,如下圖是使用Qt實(shí)現(xiàn)的一套界面換膚效果圖。

2、MFC

微軟提供的一個(gè)基礎(chǔ)類庫(kù),全稱Microsoft Foundation Classes,稱得上是上古界面庫(kù)了,完成了對(duì)Windows底層API的封裝,目前最新版的VS已經(jīng)默認(rèn)不集成MFC,需要多帶帶勾選。

坊間流傳MFC==沒(méi)飯吃,雖然2020年都已經(jīng)快結(jié)束了,但是還是有大量的公司在使用MFC這一上古技術(shù)來(lái)開(kāi)發(fā)界面(電力、軍工等傳統(tǒng)行業(yè)居多),當(dāng)然更多的是在維護(hù)的項(xiàng)目,它并沒(méi)有滅絕。

初學(xué)者的話,建議了解其大概思想即可,沒(méi)有必要再去深究它。

3、第三方界面庫(kù)

比如Duilib、BCG、Skin++等等,這里不再展開(kāi)描述,只是簡(jiǎn)單的對(duì)大名鼎鼎的Duilib進(jìn)行介紹。

Duilib采用XML來(lái)描述界面風(fēng)格和布局,將界面和邏輯分離,盡量減少在代碼中創(chuàng)建UI控件??勺岄_(kāi)發(fā)人員快速開(kāi)發(fā)出美觀的界面效果圖,是一款開(kāi)源的directUI界面庫(kù)。目前很多的互聯(lián)網(wǎng)PC端軟件都是使用Duilib開(kāi)發(fā)而來(lái),比如: 釘釘、PP助手、微信、網(wǎng)易云信、TeamTalk、盤古越獄工具等。

下圖是網(wǎng)友仿照早期迅雷看看播放器使用Duilib開(kāi)發(fā)的一款應(yīng)用軟件。

PS:第三方界面庫(kù)最大的問(wèn)題就是缺少一個(gè)正統(tǒng)的維護(hù)者,一旦出現(xiàn)問(wèn)題不好排查。

Python

沒(méi)錯(cuò),Python也可以進(jìn)行桌面軟件編程,雖然這并不是它的長(zhǎng)項(xiàng)。常見(jiàn)的界面庫(kù)有wxPython、PyQT、Tkinter等,限于篇幅,這里只對(duì)最常見(jiàn)的PyQT進(jìn)行介紹。

PyQT

一個(gè)創(chuàng)建GUI應(yīng)用程序的工具包,它是Python編程語(yǔ)言和Qt庫(kù)的成功融合。具體的優(yōu)點(diǎn)如下:

  • 社區(qū)支持較好
  • 入門教程較多,新手遇到問(wèn)題容易找到解決方案
  • Qt API設(shè)計(jì)科學(xué),值得學(xué)習(xí)參考
  • 穩(wěn)定,跨平臺(tái)性能好

唯一需要注意的是商用版需要收費(fèi)。

下圖是是使用使用QSS和PyQt5完成的界面效果圖。

Electron

最后,提下Electron,一個(gè)使用 JavaScript, HTML 和 CSS 等 Web 技術(shù)創(chuàng)建原生程序的框架,選擇它也是一個(gè)很好的選擇(目前市場(chǎng)上最優(yōu)秀的編輯器VSCode就是使用它開(kāi)發(fā)而成),簡(jiǎn)單易上手。

選擇Electron,可以方便的通過(guò)Node.JS調(diào)用系統(tǒng)API、可以使用SQLite做本地字典項(xiàng)的緩存處理,可以將復(fù)雜的計(jì)算邏輯放在客戶端進(jìn)行,從而減輕服務(wù)器端的壓力等等。


當(dāng)然,如果你非要說(shuō)Electtron寫出來(lái)的軟件體積大效率低,那么,我想誰(shuí)也沒(méi)法辯駁。


以上就是我的觀點(diǎn),喜歡就【點(diǎn)個(gè)贊】吧!

評(píng)論0 贊同0
  •  加載中...
edgardeng

edgardeng

回答于2022-06-22 19:15

為什么大家動(dòng)不動(dòng)就夸平臺(tái)呢?我很奇怪?哪有那么多平臺(tái)可夸?做桌面GUi的幾乎都是Windows,哪個(gè)公司在Linux下開(kāi)發(fā)桌面程序?題主沒(méi)說(shuō)使用什么語(yǔ)言,Windows下推薦Delphi,C++Builder,以及宇宙第一IDE—Visual Studio(VB6,VC6都是6.0的,VS08,10,15版比較好)

評(píng)論0 贊同0
  •  加載中...

最新活動(dòng)

您已邀請(qǐng)0人回答 查看邀請(qǐng)

我的邀請(qǐng)列表

  • 擅長(zhǎng)該話題
  • 回答過(guò)該話題
  • 我關(guān)注的人
向幫助了您的網(wǎng)友說(shuō)句感謝的話吧!
付費(fèi)偷看金額在0.1-10元之間
<