锘??xml version="1.0" encoding="utf-8" standalone="yes"?> Nokia today announced that its Qt cross-platform user interface (UI) and application framework for desktop and embedded platforms will be available under the open source LGPL version 2.1 license from the release of Qt 4.5, scheduled for March 2009. In addition: We have some exciting news we’d like to share with the free software community: Qt will be licensed under the terms of the LGPL version 2.1 with the upcoming Qt 4.5 release, in addition to our standard GPL and commercial licenses. We are also pleased to announce that we are going to open up the Qt source code repository and also make it easier for the community to contribute to Qt. Adding LGPL version 2.1 will greatly increase adoption of Qt across Windows, Linux, embedded Linux, Mac, S60, Windows CE, maemo, and Ovi web services. Having a larger number of users, including Nokia developers, providing feedback and contributions will help Qt remain a cutting edge, robust UI and application framework. Going forward we will speed up the development of Qt using additional resources and work in even closer cooperation with the free software community. We will do this in a number of ways, including: As we know that license versions are important for many in the free software community, we wanted to also take the opportunity to provide some highlights of our upcoming changes: As a first step we have selected LGPL version 2.1 as this is the version of the LGPL that best fits our purposes and we are most comfortable with at this point in time. We will continue to evaluate the adoption, use and legal interpretation of LGPL version 3 by the community and may use this version of the LGPL for future releases. Finally, we will open the Qt repositories and provide more information regarding how interested parties can contribute to Qt with the release of Qt 4.5, which is scheduled for March. Until then, if you have any questions, please feel free to post your questions below. Sincerely, Sebastian Nyström
]]>
Nokia to license Qt under LGPL
Vice President, Qt Software
]]>
]]>
By eXile
1.鍓嶆彁: 宸插畨瑁?make宸ュ叿(濡侻ingw), Qt, Python.
pexports C:\WINDOWS\system32\python25.dll > python25.def
dlltool --dllname python25.dll --def python25.def --output-lib libpython25.a
2.瀹夎 PyQt
1) 瀹夎 SIP
python configure.py -p win32-g++
make
make install
2) 瀹夎 PyQt
python configure.py
make
make install
3.瀹夎 Eric
1)瀹夎 QScintilla
qmake qscintilla.pro
make
make install
copy %QTDIR%\lib\qscintilla2.dll %QTDIR%\bin
2).瀹夎 eric
python install.py
http://www.riverbankcomputing.co.uk/news
鍘熸枃鍦板潃: http://www.shnenglu.com/exile/
浣滆匨atthias Ettrich錛岃瘧鑰匞oogol Lee錛屽師鏂囧湴鍧鍦?a >榪欓噷銆?
鍦ㄥ瓚o紙Trolltech錛夛紝涓轟簡鏀硅繘Qt鐨勫紑鍙戜綋楠岋紝鎴戜滑鍋氫簡澶ч噺鐨勭爺絀躲傝繖綃囨枃绔犻噷錛屾垜鎵撶畻鍒嗕韓涓浜涙垜浠殑鍙戠幇錛屼互鍙婁竴浜涙垜浠湪璁捐Qt4鏃剁敤鍒扮殑鍘熷垯錛屽茍涓斿睍紺哄浣曟妸榪欎簺鍘熷垯搴旂敤鍒頒綘鐨勪唬鐮侀噷銆?
璁捐搴旂敤紼嬪簭鎺ュ彛錛孉PI錛屾槸寰堥毦鐨勩傝繖鏄竴闂ㄥ拰璁捐璇█鍚屾牱闅劇殑鑹烘湳銆傝繖閲屽彲浠ラ夋嫨澶鐨勫師鍒欙紝鐢氳嚦鏈夊緢澶氬師鍒欏拰鍏朵粬鍘熷垯鏈夌煕鐩俱?
鐜板湪錛岃綆楁満縐戝鏁欒偛鎶婂緢澶х殑鍔涙皵鏀懼湪綆楁硶鍜屾暟鎹粨鏋勪笂錛岃屽緢灝戝叧娉ㄨ璁¤璦鍜屾鏋惰儗鍚庣殑鍘熷垯銆傝繖璁╁簲鐢ㄧ▼搴忓憳瀹屽叏娌℃湁鍑嗗鍘婚潰瀵硅秺鏉ヨ秺閲嶈鐨勪換鍔★細鍒涢犲彲閲嶇敤鐨勭粍浠躲?
鍦ㄩ潰鍚戝璞¤璦鏅強涔嬪墠錛屽彲閲嶇敤鐨勯氱敤浠g爜澶ч儴鍒嗘槸鐢卞簱鎻愪緵鑰呭啓鐨勶紝鑰屼笉鏄簲鐢ㄧ▼搴忓憳銆傚湪Qt鐨勪笘鐣岄噷錛岃繖縐嶇姸鍐墊湁浜嗘槑鏄劇殑鏀瑰杽銆傚湪浠諱綍鏃跺欙紝鐢≦t緙栫▼灝辨槸鍐欐柊鐨勭粍浠躲備竴涓吀鍨嬬殑Qt搴旂敤紼嬪簭鑷沖皯閮戒細鏈夊嚑涓湪紼嬪簭涓弽澶嶄嬌鐢ㄧ殑鑷畾涔夌粍浠躲備竴鑸潵璇達紝鍚屾牱鐨勭粍浠朵細鎴愪負鍏朵粬搴旂敤紼嬪簭鐨勪竴閮ㄥ垎銆侹DE錛孠妗岄潰鐜錛岃蛋寰楁洿榪滐紝鐢ㄨ澶氳拷鍔犵殑搴撴潵鎵╁睍Qt錛屽疄鐜頒簡鏁扮櫨涓檮鍔犵被銆傦紙涓鑸潵璇達紝涓涓被灝辨槸涓涓彲閲嶇敤緇勪歡錛屽師鏂囪繖閲屾病鏈夊啓娓呮銆傦級
浣嗘槸錛屼竴涓ソ鐨勶紝楂樻晥鐨凜++ API鏄敱浠涔堢粍鎴愮殑鍛紵鏄ソ榪樻槸鍧忥紝鍙栧喅浜庡緢澶氬洜绱犫斺旀瘮濡傦紝鎵嬪ご鐨勫伐浣滃拰鐗瑰畾鐨勭洰鏍囩兢浣撱傚ソ鐨凙PI鏈夊緢澶氱壒鎬э紝涓浜涚壒鎬ф槸澶у閮芥兂瑕佺殑錛岃屽彟涓浜涘垯鏄拡瀵圭壒瀹氶棶棰樺煙鐨勩?
API鏄潰鍚戠▼搴忓憳鐨勶紝鐢ㄦ潵鎻忚堪鎻愪緵緇欐渶緇堢敤鎴風殑GUI鏄粈涔堟牱瀛愩侫PI涓殑P甯﹁〃紼嬪簭鍛橈紙Programmer錛夛紝鑰屼笉鏄▼搴忥紙Program錛夛紝鐢ㄦ潵寮鴻皟API鏄粰紼嬪簭鍛樼敤鐨勶紝緇欎漢綾葷殑紼嬪簭鍛樼敤鐨勩?
鎴戜滑鍧氫俊API搴旇鏄渶灝忓寲涓斿畬鏁寸殑錛屾嫢鏈夋竻鏅頒笖綆鍗曠殑璇箟錛岀洿瑙夊寲錛屽鏄撹蹇嗭紝騫朵笖寮曞浜哄啓鍑烘槗璇葷殑浠g爜銆?
鏈鍚庯紝璁頒綇錛屼笉鍚岀被鍨嬬殑鐢ㄦ埛浼氱敤鍒癆PI鐨勪笉鍚岄儴鍒嗐傝櫧鐒剁畝鍗曠殑瀹炰緥鍖栦竴涓猀t綾繪槸闈炲父鐩磋鍖栫殑錛岃璧勬繁涓撳鍦ㄨ瘯鍥懼瓙綾誨寲涔嬪墠璇諱竴閬嶆枃妗o紝鏄緢鍚堢悊鐨勩?
榪欐槸涓父瑙佺殑璇В錛氭洿濂界殑API錛岀敤鏇村皯鐨勪唬鐮佸畬鎴愪竴浠朵簨銆傛案榪滆浣忎唬鐮佷竴嬈″啓灝憋紝涔嬪悗闇瑕佷笉鏂殑闃呰騫剁悊瑙c傛瘮濡傦細
QSlider *slider = new QSlider(12, 18, 3, 13, Qt::Vertical, 0, "volume");
榪滄瘮涓嬮潰閭f牱闅捐錛堢敋鑷抽毦鍐欙級錛?
QSlider *slider = new QSlider(Qt::Vertical); slider->setRange(12, 18); slider->setPageStep(3); slider->setValue(13); slider->setObjectName("volume");
甯冨皵鍙傛暟閫氬父浼氬鑷翠笉鏄撹鐨勪唬鐮併傛洿榪涗竴姝ワ紝緇欎竴涓凡緇忓瓨鍦ㄧ殑鍑芥暟鍔犲叆涓涓竷灝斿弬鏁幫紝榪欏父甯告槸涓敊璇傚湪Qt閲岋紝涓涓紶緇熺殑渚嬪瓙鏄痳epaint()錛岃繖涓嚱鏁板甫鏈変竴涓竷灝斿弬鏁幫紝鏉ユ爣璇嗘槸鍚︽摝闄よ儗鏅紙榛樿鎿﹂櫎錛夈傝繖璁╀唬鐮侀氬父鍐欐垚錛?
widget->repaint(false);
鍒濆鑰呭緢瀹規槗鎶婅繖鍙ヨ瘽鐞嗚В鎴?#8220;鍒噸鐢?#8221;錛?
榪欐牱鍋氭槸鑰冭檻鍒板竷灝斿弬鏁板彲浠ュ噺灝戜竴涓嚱鏁幫紝閬垮厤浠g爜鑶ㄨ儉銆備簨瀹炰笂錛岃繖鍙嶈屽鍔犱簡浠g爜閲忋傛湁澶氬皯Qt鐢ㄦ埛鐪熺殑璁頒綇浜嗕笅闈笁琛岀▼搴忛兘鏄仛浠涔堢殑錛?
widget->repaint(); widget->repaint(true); widget->repaint(false);
涓涓ソ涓浜涚殑API鍙兘鐪嬭搗鏉ユ槸榪欐牱錛?
widget->repaint(); widget->repaintWithoutErasing();
鍦≦t4閲岋紝鎴戜滑閲嶆柊璁捐浜唚idget錛屼嬌寰楃敤鎴蜂笉鍐嶉渶瑕佷笉閲嶇敾鑳屾櫙鐨勯噸鐢粀idget錛屾潵瑙e喅榪欎釜闂銆俀t4鍘熺敓鏀寔鍙岀紦瀛橈紝搴熸帀浜嗚繖涓壒鎬с?
榪欓噷榪樻湁涓浜涗緥瀛愶細
widget->setSizePolicy(QSizePolicy::Fixed, QSizePolicy::Expanding, true); textEdit->insert("Where's Waldo?", true, true, false); QRegExp rx("moc_*.c??", false, true);
涓涓樉鑰屾槗瑙佺殑瑙e喅鏂規硶鏄紝浣跨敤鏋氫婦綾誨瀷浠f浛甯冨皵鍙傛暟銆傝繖姝f槸鎴戜滑鍦≦t4涓?a >QString澶у皬鍐欐晱鎰熸椂鐨勫鐞嗘柟娉曘傛瘮杈冿細
str.replace("%USER%", user, false); // Qt 3 str.replace("%USER%", user, Qt::CaseInsensitive); // Qt 4
鐩鎬技鐨勭被搴旇鍚湁鐩鎬技鐨凙PI銆傚湪蹇呰鐨勬椂鍊欌斺斿氨鏄錛岄渶瑕佷嬌鐢ㄨ繍琛屾椂澶氭佺殑鏃跺欌斺旇繖鍙互閫氳繃緇ф壙瀹炵幇銆備絾鏄鎬佷緷鏃т細鍙戠敓鍦ㄨ璁℃椂鏈熴傛瘮濡傦紝濡傛灉浣犵敤QListBox浠f浛QComboBox錛屾垨鑰呯敤QSlider浠f浛QSpinBox錛屼綘浼氬彂鐜扮浉浼肩殑API浣胯繖縐嶆浛鎹㈤潪甯稿鏄撱傝繖灝辨槸鎴戜滑鎵璇寸殑“闈欐佸鎬?#8221;銆?
闈欐佸鎬佷篃浣緼PI鍜岀▼搴忔ā寮忔洿瀹規槗璁板繂銆備綔涓虹粨璁猴紝涓緇勭浉鍏崇被浣跨敤鐩鎬技鐨凙PI錛屾湁鏃惰姣旂粰姣忎釜綾繪彁渚涘畬緹庣殑鍗曠嫭API錛岃濂姐?
錛堣瘧娉細C++ 0x灝嗚寮曞叆鐨刢oncept錛屽氨鏄潤鎬佸鎬佺殑璇硶灞傚疄鐜般傝繖涓姣斿崟鐙殑鍑芥暟鍚嶇浉浼兼洿寮哄ぇ涓旀槗鐢ㄣ傦級
鍛藉悕錛屽ぇ姒傛槸璁捐API鏃跺敮涓鏈閲嶈鐨勯棶棰樹簡銆傝鎬庝箞縐板懠榪欎釜綾伙紵鎴愬憳鍑芥暟璇ュ彨浠涔堬紵
涓浜涜鍒欓氬父瀵規墍鏈夊悕瀛楅兘鏄湁鐢ㄧ殑銆傞鍏堬紝灝卞儚鎴戜箣鍓嶆彁鍒扮殑錛屽埆鐢ㄧ緝鍐欍傜敋鑷沖緢鏄庢樉鐨勭緝鍐欙紝姣斿“prev”琛ㄧず“previous”浠庨暱榪滅湅涔熸槸涓嶅垝綆楃殑錛屽洜涓虹敤鎴峰繀欏昏浣忓摢浜涜瘝鏄緝鍐欍?
濡傛灉API鏈韓涓嶄竴鑷達紝浜嬫儏鑷劧浼氬彉寰楀緢緋熺硶錛屾瘮濡傦紝 Qt3鏈塧ctivatePreviousWindow()鍜宖etchPrev()銆傚潥鎸?#8220;娌℃湁緙╁啓”鐨勮鍒欐洿瀹規槗鍒涘緩涓鑷寸殑API銆?
鍙︿竴涓噸瑕佷絾鏇村姞寰鐨勮鍒欐槸錛屽湪璁捐綾葷殑鏃跺欙紝蹇呴』灝藉姏淇濊瘉瀛愮被鍛藉悕絀洪棿鐨勫共鍑銆傚湪Qt3閲岋紝娌℃湁寰堝ソ鐨勯伒瀹堣繖涓鍒欍傛瘮濡傦紝鎷?a >QToolButton鏉ヤ婦渚嬨傚鏋滀綘鍦≦t3閲岋紝瀵逛竴涓?a >QToolButton璋冪敤name()銆乧aption()銆乼ext()鎴栬卼extLabel()錛屼綘甯屾湜鍋氫粈涔堝憿錛熶綘鍙互鍦≦t Designer閲屾嬁QToolButton璇曡瘯錛?
鐢變簬瀵瑰彲璇繪х殑鍏蟲敞錛宯ame鍦≦t4閲岃縐頒綔objectName錛宑aption鍙樻垚浜唚indowsTitle錛岃屽湪QToolButton閲屼笉鍐嶆湁鍗曠嫭鐨則extLabel灞炴с?
鏍囪瘑涓緇勭被鑰屼笉鏄崟鐙粰姣忎釜綾繪壘涓伆褰撶殑鍚嶅瓧銆傛瘮濡傦紝Qt4閲屾墍鏈夋ā寮忔劅鐭ラ」鐩殑瑙嗗浘綾伙紙model-aware item view classes錛夐兘鎷ユ湁-View鐨勫悗緙錛?a >QListView銆?a >QTableView鍜?a >QTreeView錛夛紝騫朵笖瀵瑰簲鍩轟簬欏圭洰鐨勭被閮界敤鍚庣紑-Widget浠f浛錛?a >QListWidget銆?a >QTableWidget鍜?a >QTreeWidget錛夈?
褰撳0鏄庢灇涓炬椂錛屾椂鍒昏浣忥紝鍦–++錛堜笉鍍廕ava鍜孋#錛変腑錛屼嬌鐢ㄦ灇涓懼間笉闇瑕佺被鍨嬩俊鎭備笅闈㈢殑渚嬪瓙婕旂ず浜嗙粰鏋氫婦鍊艱搗涓お榪囧父鐢ㄧ殑鍚嶅瓧鎵寮曡搗鐨勫嵄瀹籌細
namespace Qt { enum Corner { TopLeft, BottomRight, ... }; enum CaseSensitivity { Insensitive, Sensitive }; ... }; tabWidget->setCornerWidget(widget, Qt::TopLeft); str.indexOf("$(QTDIR)", Qt::Insensitive);
鍦ㄦ渶鍚庝竴琛岋紝Insensitive鏄粈涔堟剰鎬濓紵涓涓敤浜庡懡鍚嶆灇涓懼肩殑鎸囧鎬濇兂鏄紝鍦ㄦ瘡涓灇涓懼奸噷錛岃嚦灝戦噸澶嶄竴涓灇涓劇被鍨嬪悕涓殑鍏冪礌錛?
namespace Qt { enum Corner { TopLeftCorner, BottomRightCorner, ... }; enum CaseSensitivity { CaseInsensitive, CaseSensitive }; ... }; tabWidget->setCornerWidget(widget, Qt::TopLeftCorner); str.indexOf("$(QTDIR)", Qt::CaseInsensitive);
褰撴灇涓懼煎彲浠ョ敤“鎴?#8221;榪炴帴璧鋒潵褰撲綔涓涓爣蹇楁椂錛屼紶緇熺殑鍋氭硶鏄皢“鎴?#8221;鐨勭粨鏋滀綔涓轟竴涓猧nt淇濆瓨錛岃繖涓嶆槸綾誨瀷瀹夊叏鐨勩俀t4鎻愪緵浜嗕竴涓ā鏉跨被 QFlags<T>鏉ュ疄鐜扮被鍨嬪畨鍏紝鍏朵腑T鏄釜鏋氫婦綾誨瀷銆備負浜嗘柟渚夸嬌鐢紝Qt涓哄緢澶氭爣蹇楃被鍚嶆彁渚涗簡typedef錛屾墍浠ヤ綘鍙互浣跨敤綾誨瀷 Qt::Alignment浠f浛QFlags<Qt::AlignmentFlag>銆?
涓轟簡鏂逛究錛屾垜浠粰鏋氫婦綾誨瀷鍗曟暟鐨勫悕瀛楋紙榪欐牱琛ㄧず鏋氫婦鍊間竴嬈″彧鑳芥湁涓涓爣蹇楋級錛岃?#8220;鏍囧織”鍒欎嬌鐢ㄥ鏁板悕瀛椼傛瘮濡傦細
enum RectangleEdge { LeftEdge, RightEdge, ... }; typedef QFlags<RectangleEdge> RectangleEdges;
鏈変簺鎯呭喌涓嬶紝“鏍囧織“綾諱嬌鐢ㄤ簡鍗曟暟鐨勫悕瀛椼傝繖鏃訛紝鏋氫婦綾諱嬌鐢?Flag鍋氬悗緙錛?
enum AlignmentFlag { AlignLeft, AlignTop, ... }; typedef QFlags<AlignmentFlag> Alignment;
錛堣繖閲屼負鍟ヤ笉鏄妸”鏍囧織“綾葷敤-Flag鍋氬悗緙錛岃屾槸鎶婃灇涓懼煎仛鍚庣紑鍛紵鎰熻鏈夌偣娣鋒穯……錛?
緇欏嚱鏁板懡鍚嶇殑涓涓鍒欐槸錛屽悕瀛楄鏄庣‘浣撶幇鍑鴻繖涓嚱鏁版槸鍚︽湁鍓綔鐢ㄣ傚湪Qt3錛屽父鏁板嚱鏁?a >QString::simplifyWhiteSpace()榪濆弽浜嗚繖涓師鍒欙紝鍥犱負瀹冭繑鍥炵被涓涓?a >QString瀹炰緥錛岃屼笉鏄儚鍚嶅瓧鎵鎻愮ず鐨勯偅鏍鳳紝鏇存敼浜嗚皟鐢ㄨ繖涓嚱鏁扮殑瀹炰緥鏈韓銆傚湪Qt4錛岃繖涓嚱鏁拌閲嶅懡鍚嶄負QString::simplified()銆?
鍙傛暟鍚嶆槸紼嬪簭鍛樼殑閲嶈淇℃伅鏉ユ簮錛岃櫧鐒跺湪浣跨敤API鏃訛紝騫朵笉鐩存帴灞曠ず鍦ㄤ唬鐮侀噷銆傜敱浜庣幇浠DE鍦ㄧ▼搴忓憳鍐欎唬鐮佹椂鍙互鑷姩鏄劇ず鍙傛暟鍚嶏紙灝辨槸鑷姩鎰熺煡鎴栬呰嚜鍔ㄨˉ鍏ㄤ箣綾葷殑鍔熻兘錛夛紝鍊煎緱鑺辨椂闂寸粰澶存枃浠墮噷澹版槑鐨勫弬鏁頒竴涓悎閫傜殑鍚嶅瓧錛屽茍涓斿湪鏂囨。涓篃浣跨敤鐩稿悓鐨勫悕瀛椼?
緇欏竷灝斿睘鎬х殑璁劇疆鍑芥暟鍜屾彁鍙栧嚱鏁頒竴涓悎閫傜殑鍚嶅瓧錛屾繪槸闈炲父鐥涜嫤鐨勩傛彁鍙栧嚱鏁板簲璇ュ彨鍋歝hecked()榪樻槸isChecked()錛焥crollBarsEnabled()榪樻槸areScrollBarEnabled()?
鍦≦t4閲岋紝鎴戜滑浣跨敤涓嬪垪瑙勫垯鍛藉悕鎻愬彇鍑芥暟錛?
璁劇疆鍑芥暟鍚嶅瓧緇ф壙鑷彁鍙栧嚱鏁板悕錛屽彧鏄Щ鎺変簡鎵鏈夊墠緙錛屽茍浣跨敤set-鍋氬墠緙錛屾瘮濡傦細setDown()榪樻湁setScrollBarsEnabled()銆傚睘鎬х殑鍚嶅瓧涓庢彁鍙栧嚱鏁扮浉鍚岋紝鍙槸鍘繪帀浜嗗墠緙銆?
浼犲嚭鍙傛暟鐨勬渶浣抽夋嫨鏄粈涔堬紝鎸囬拡榪樻槸寮曠敤錛?
void getHsv(int *h, int *s, int *v) const void getHsv(int &h, int &s, int &v) const
澶ч儴鍒咰++涔︽帹鑽愬湪鑳界敤寮曠敤鐨勫湴鏂瑰氨鐢ㄥ紩鐢紝榪欐槸鍥犱負涓鑸涓哄紩鐢ㄦ瘮鎸囬拡鏇?#8220;瀹夊叏涓斿ソ鐢?#8221;銆傜劧鑰岋紝鍦ㄥ瓚o紙Trolltech錛夛紝鎴戜滑鍊懼悜浣跨敤鎸囬拡錛屽洜涓鴻繖璁╀唬鐮佹洿鏄撹銆傛瘮杈冿細
color.getHsv(&h, &s, &v); color.getHsv(h, s, v);
鍙湁絎竴琛岃兘娓呮鐨勮鏄庯紝鍦ㄥ嚱鏁拌皟鐢ㄥ悗錛宧銆乻鍜寁灝嗘湁寰堝ぇ鍑犵巼琚敼鍔ㄣ?
涓轟簡灞曠ず濡備綍瀹為檯搴旂敤榪欎簺姒傚康錛屾垜浠皢瀛︿範Qt3涓殑API QProgressBar騫跺拰Qt4閲岀浉閫氱殑API鍋氭瘮杈冦傚湪Qt3閲岋細
class QProgressBar : public QWidget { ... public: int totalSteps() const; int progress() const; const QString &progressString() const; bool percentageVisible() const; void setPercentageVisible(bool); void setCenterIndicator(bool on); bool centerIndicator() const; void setIndicatorFollowsStyle(bool); bool indicatorFollowsStyle() const; public slots: void reset(); virtual void setTotalSteps(int totalSteps); virtual void setProgress(int progress); void setProgress(int progress, int totalSteps); protected: virtual bool setIndicator(QString &progressStr, int progress, int totalSteps); ... };
API鐩稿綋澶嶆潅錛屼笖涓嶇粺涓銆傛瘮濡傦紝浠呬粠鍚嶅瓧reset()騫朵笉鑳界悊瑙e叾浣滅敤錛宻etTotalSteps()鍜宻etProgress()鏄揣鑰﹀悎鐨勩?
鏀硅繘API鐨勫叧閿紝鏄敞鎰忓埌QProgressBar鍜孮t4鐨?a >QAbstractSpinBox綾誨強鍏跺瓙綾?a >QSpinBox錛?a >QSlider鍜?a >QDial寰堢浉浼箋傝В鍐蟲柟娉曪紵鐢╩inimum銆乵aximum鍜寁alue浠f浛progress鍜宼otalSteps銆傚姞鍏lueChanged()淇″彿銆傚姞鍏etRange()鍑芥暟銆?
涔嬪悗瑙傚療progressString銆乸ercentage鍜宨ndicator瀹為檯閮芥寚涓涓笢瑗匡細鍦ㄨ繘搴︽潯涓婃樉紺虹殑鏂囧瓧銆備竴鑸潵璇存枃瀛楁槸鐧懼垎姣斾俊鎭紝浣嗘槸涔熷彲浠ヤ嬌鐢╯etIndicator()璁句負浠繪剰瀛楃銆備笅闈㈡槸鏂扮殑API錛?
virtual QString text() const; void setTextVisible(bool visible); bool isTextVisible() const;
榛樿鐨勬枃瀛椾俊鎭槸鐧懼垎姣斾俊鎭傛枃瀛椾俊鎭彲浠ヨ棄鐢遍噸鏂板疄鐜皌ext()鑰屾敼鍙樸?
鍦≦t3 API涓紝setCenterIndicator()鍜宻etIndicatorFollowStyle()鏄袱涓獎鍝嶅榻愮殑鍑芥暟銆備粬浠彲浠ユ柟渚跨殑鐢變竴涓嚱鏁板疄鐜幫紝setAlignment()錛?
void setAlignment(Qt::Alignment alignment);
濡傛灉紼嬪簭鍛樹笉璋冪敤setAlignment()錛屽榻愭柟寮忓熀浜庡綋鍓嶇殑椋庢牸銆傚浜庡熀浜嶮otif鐨勯鏍鹼紝鏂囧瓧灝嗗眳涓樉紺猴紱瀵瑰叾浠栭鏍鹼紝鏂囧瓧灝嗛潬鍦ㄥ彸杈廣?
榪欐槸鏀硅繘鍚庣殑QProgressBar API錛?
class QProgressBar : public QWidget { ... public: void setMinimum(int minimum); int minimum() const; void setMaximum(int maximum); int maximum() const; void setRange(int minimum, int maximum); int value() const; virtual QString text() const; void setTextVisible(bool visible); bool isTextVisible() const; Qt::Alignment alignment() const; void setAlignment(Qt::Alignment alignment); public slots: void reset(); void setValue(int value); signals: void valueChanged(int value); ... };
API闇瑕佽川閲忎繚璇併傜涓涓慨璁㈢増涓嶅彲鑳芥槸姝g‘鐨勶紱浣犲繀欏誨仛嫻嬭瘯銆傚啓浜涚敤渚嬶細鐪嬬湅閭d簺浣跨敤浜嗚繖浜汚PI鐨勪唬鐮侊紝騫墮獙璇佷唬鐮佹槸鍚︽槗璇匯?
鍏朵粬鐨勬妧宸у寘鎷鍒殑浜哄垎鍒湪鏈夋枃妗e拰娌℃湁鏂囨。鐨勬儏鍐典笅錛屼嬌鐢ㄨ繖浜汚PI錛涙垨鑰呬負API綾誨啓鏂囨。錛堝寘鎷被鐨勬榪板拰鐙珛鐨勫嚱鏁幫級銆?
褰撲綘鍗′綇鏃訛紝鍐欐枃妗d篃鏄竴縐嶈幏寰楀ソ鍚嶅瓧鐨勬柟娉曪細浠呬粎鏄皾璇曟妸鏉$洰錛堢被錛屽嚱鏁幫紝鏋氫婦鍊鹼紝絳夌瓑鍛釜錛夊啓涓嬫潵騫朵笖浣跨敤浣犲啓鐨勭涓鍙ヨ瘽浣滀負鐏墊劅銆傚鏋滀綘涓嶈兘鎵懼埌涓涓簿紜殑鍚嶅瓧錛岃繖甯稿父璇存槑榪欎釜鏉$洰涓嶅簲璇ュ瓨鍦ㄣ傚鏋滄墍鏈夊墠闈㈢殑浜嬫儏閮藉け璐ヤ簡騫朵笖浣犵‘璁よ繖涓蹇電殑瀛樺湪錛屽彂鏄庝竴涓柊鍚嶅瓧銆傛瘯绔燂紝“widget”銆?“event”銆?#8220;focus”鍜?#8220;buddy”榪欎簺鍚嶅瓧灝辨槸榪欎箞鏉ョ殑銆?