锘??xml version="1.0" encoding="utf-8" standalone="yes"?>精品久久久久中文字幕日本,亚洲欧美日韩久久精品第一区,无码人妻少妇久久中文字幕http://www.shnenglu.com/mirguest/zh-cnSat, 28 Jun 2025 16:17:27 GMTSat, 28 Jun 2025 16:17:27 GMT60鍏充簬闅愯棌瀹炵幇浠g爜http://www.shnenglu.com/mirguest/archive/2012/06/23/179871.htmlmirguestmirguestSat, 23 Jun 2012 08:14:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/06/23/179871.htmlhttp://www.shnenglu.com/mirguest/comments/179871.htmlhttp://www.shnenglu.com/mirguest/archive/2012/06/23/179871.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/179871.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/179871.html鍏充簬闅愯棌瀹炵幇浠g爜

C++ 涓鐩存病鏈夊鏄庣櫧錛屽浜庝竴浜涢棶棰橈紝涓鐩翠篃娌℃湁瑙e喅銆? 浠婂ぉ灝濊瘯瑙e喅鐨勯棶棰橈紝鏉ユ簮浜庡井杞浣曟妸瀹冪殑搴撳疄鐜伴殣钘忚搗鏉ャ?/p>

涔嬪墠鐨勬兂娉曟槸錛屼笉綆″畾涔変綍縐嶇被鍜屾柟娉曪紝鎬誨簲璇ュ湪澶存枃浠朵腑鍑虹幇澹版槑錛? 浠庤岋紝涓浜沺rivate鐨勬柟娉曞拰鍙橀噺鎴戜滑涔熷簲璇ュ彲浠ユ帹鏂嚭鏉ャ? 浣嗘槸錛屼簨瀹炲茍涓嶆槸榪欐牱錛屽緢澶氭椂鍊欙紝鐪嬪埌鐨勫彧鏄痯ublic鐨勩?/p>

鑰屼粠鐞嗚涓婃潵璇達紝搴旇灝嗗疄鐜頒笌鎺ュ彛鍒嗙銆傚儚寰蔣鎻愪緵鐨勫ご鏂囦歡錛? 鐨勭‘宸茬粡瀹氫箟濂戒簡鍥哄畾鐨勬帴鍙c傝岃繖鏍鳳紝瀹冧滑鍙渶瑕佸啀鎻愪緵綾誨簱錛? 鎴戜滑灝卞彲浠ョ敤浜嗐?/p>

瀹氫箟鎺ュ彛

棣栧厛錛屽畾涔変竴涓О涓?MyClass 鐨勭被錛屼負浜嗘柟渚匡紝鎴戝垱寤轟簡涓涓洰褰曪紝 涓撻棬鐢ㄤ簬瀛樻斁緙栬瘧鎴戜滑鑷繁綾誨簱鐨勪唬鐮併?/p>

MyClass.h 鐨勪唬鐮侀潪甯哥畝鍗曪細

#ifndef MyClass_H
#define MyClass_H
class MyClass {
public:
void run();
};
#endif

榪欎釜涔嬪悗浼氭毚闇茬粰鐢ㄦ埛銆備絾鎴戜滑鍏堜笉榪涜瀹炵幇銆?/p>

瀹炵幇闅愯棌浠g爜

涓嬮潰錛屽仛鐨勬槸鐪熸鐨勫伐浣滐紝鍗蟲垜浠笉闇瑕佺粰鐢ㄦ埛鐪嬬殑銆?/p>

瀹氫箟 PrivateMyClass.h 鍜?PrivateMyClass.cpp 銆?/p>

PrivateMyClass.h 鍐呭寰堢畝鍗曪細

#ifndef PrivateMyClass_H
#define PrivateMyClass_H
class PrivateMyClass {
public:
void canrun();
};
#endif

PrivateMyClass.cpp 涔熺畝鍗曪細

#include <iostream>
#include "PrivateMyClass.h"
void PrivateMyClass::canrun() {
std::cout << "Begin Can RUN?" << std::endl;
std::cout << "End Can RUN?" << std::endl;
}

灝佽闅愯棌浠g爜

鐒跺悗錛屾垜浠湪 MyClass 鐨勫疄鐜頒腑錛岃皟鐢?PrivateMyClass 銆?/p>

MyClass.cpp 鍐呭錛?/p>

#include <iostream>
#include "MyClass.h"
#include "PrivateMyClass.h"
void MyClass::run() {
std::cout << "Begin RUN" << std::endl;
PrivateMyClass pmc;
pmc.canrun();
std::cout << "End RUN" << std::endl;
}

緙栬瘧鐢熸垚鍔ㄦ佸簱

鏈変簡榪欎簺錛屽氨鍙互緙栬瘧鍑哄姩鎬佸簱浜嗭紝鍐欎竴涓?Makefile 錛?/p>

lib:MyClass.o PrivateMyClass.o
   g++ -g -shared -o libresult.so MyClass.o PrivateMyClass.o
MyClass.o:MyClass.cpp MyClass.h
   g++ -fPIC -Wall -g -c MyClass.cpp
PrivateMyClass.o:PrivateMyClass.cpp PrivateMyClass.h
   g++ -fPIC -Wall -g -c PrivateMyClass.cpp

緇欏嚭澶存枃浠跺拰鍔ㄦ佸簱

榪欐牱錛屾垜浠氨鍙妸 MyClass.h 鍜?libresult.so 緇欑敤鎴蜂簡銆? 鎴戞斁鍒皃ublic鐨勭洰褰曚笅銆?/p>

嫻嬭瘯

涓轟簡紜繚姝e父榪愯錛屽啓浠g爜嫻嬭瘯涓涓嬶細

#include "MyClass.h"
int main() {
MyClass mc;
mc.run();
}

鐒跺悗鏄疢akefile錛?/p>

all:exe
   LD_LIBRARY_PATH=./:$LD_LIBRARY_PATH ./result
test1:exe
   LD_LIBRARY_PATH=../private/:$LD_LIBRARY_PATH ./result
test2:exe
   LD_LIBRARY_PATH=../private-v2/:$LD_LIBRARY_PATH ./result
exe:TestClass.o
   g++ -o result TestClass.o -L. -lresult
TestClass.o:TestClass.cpp
   g++ -c TestClass.cpp

榪欎釜閲岄潰錛屽寘鍚簡鍙﹀鐨勪竴涓祴璇曪細鍗沖簱鏇存柊鍚庯紝 鎴戞槸鍚﹀彲浠ヤ笉閲嶆柊緙栬瘧鐢ㄦ埛浠g爜銆?/p>

緇撹鏄紝鍙互涓嶇敤閲嶆柊緙栬瘧鐢ㄦ埛浠g爜銆?/p>



mirguest 2012-06-23 16:14 鍙戣〃璇勮
]]>
銆愮瑪璁般戣璁″師鏈腑浣滆呭叧浜庤璁$殑寤鴻http://www.shnenglu.com/mirguest/archive/2012/05/12/174669.htmlmirguestmirguestSat, 12 May 2012 07:53:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/05/12/174669.htmlhttp://www.shnenglu.com/mirguest/comments/174669.htmlhttp://www.shnenglu.com/mirguest/archive/2012/05/12/174669.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/174669.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/174669.html

1錛変笓蹇冪爺絀朵互鍓嶈璁¤呯殑宸ヤ綔錛岀湅鐪嬩粬浠浣曡В鍐抽棶棰?br />

2錛夊皾璇曞紕鏄庣櫧浠栦滑涓轟粈涔堝仛鍑洪偅鏍風殑璁捐鍐沖畾錛岃繖鏄浣犺嚜宸辨渶鏈夊惎鍙戞х殑闂

3錛変粩緇嗙爺絀朵互鍓嶈璁¤呯殑椋庢牸銆傛渶濂界殑鏂瑰紡鏄皾璇曠敤浠栦滑鐨勪竴浜涢鏍煎嬀鐢昏璁¤崏鍥?br />

4錛変繚瀛樹竴鏈?#8220;鑽夊浘鏈?#8221;錛屽皢鎮ㄧ殑鎯蟲硶銆佽璁″拰灞閮ㄨ璁¤褰曚笅鏉ワ紝涓嶈浣跨敤浣曠濯掕川

5錛夊湪寮濮嬭璁℃椂錛屽啓涓嬫偍瀵圭敤鎴峰拰浣跨敤鏂瑰紡鐨勫亣瀹?br />

6錛夎璁°佽璁°佽璁★紒


mirguest 2012-05-12 15:53 鍙戣〃璇勮
]]>
[Python][PyQt4]PyQt4 涓殑淇勭綏鏂柟鍧?/title><link>http://www.shnenglu.com/mirguest/archive/2012/02/12/165392.html</link><dc:creator>mirguest</dc:creator><author>mirguest</author><pubDate>Sun, 12 Feb 2012 02:18:00 GMT</pubDate><guid>http://www.shnenglu.com/mirguest/archive/2012/02/12/165392.html</guid><wfw:comment>http://www.shnenglu.com/mirguest/comments/165392.html</wfw:comment><comments>http://www.shnenglu.com/mirguest/archive/2012/02/12/165392.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mirguest/comments/commentRss/165392.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mirguest/services/trackbacks/165392.html</trackback:ping><description><![CDATA[     鎽樿: PyQt4 涓殑淇勭綏鏂柟鍧?#182; 鍒涘緩涓涓數鑴戞父鎴忔槸寰堝叿鎸戞垬鎬х殑銆傝繜鏃╃▼搴忓憳鎯沖垱寤轟竴涓數鑴戞父鎴忋備簨瀹炰笂錛屽緢澶氫漢瀵圭紪紼嬫劅鍏磋叮錛屾槸鍥犱負瀹冧滑鐜╀簡娓告垙錛岀劧鍚庢兂鍒涘緩鑷繁鐨勬父鎴忋傚垱寤轟竴涓父鎴忎細鎻愬崌浣犵殑緙栫▼鎶鑳姐? 淇勭綏鏂柟鍧?#182; 淇勭綏鏂柟鍧椾粠鍒涘緩寮濮嬪氨鎴愪負寰堟祦琛岀殑娓告垙涔嬩竴銆傛父鎴忔渶寮濮嬫槸鐢變縿緗楁柉紼嬪簭鍛?Alexey Pajitnov 璁捐鍜岀紪鍐欑殑銆備粠閭f椂寮濮嬪嚑涔庡湪鎵鏈夌殑璁$畻鏈哄鉤鍙拌繍琛屻傜敋鑷?..  <a href='http://www.shnenglu.com/mirguest/archive/2012/02/12/165392.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/mirguest/aggbug/165392.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mirguest/" target="_blank">mirguest</a> 2012-02-12 10:18 <a href="http://www.shnenglu.com/mirguest/archive/2012/02/12/165392.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[Python][PyQt4]鍦?PyQt4 涓畾鍒剁粍浠?/title><link>http://www.shnenglu.com/mirguest/archive/2012/02/12/165391.html</link><dc:creator>mirguest</dc:creator><author>mirguest</author><pubDate>Sun, 12 Feb 2012 02:17:00 GMT</pubDate><guid>http://www.shnenglu.com/mirguest/archive/2012/02/12/165391.html</guid><wfw:comment>http://www.shnenglu.com/mirguest/comments/165391.html</wfw:comment><comments>http://www.shnenglu.com/mirguest/archive/2012/02/12/165391.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mirguest/comments/commentRss/165391.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mirguest/services/trackbacks/165391.html</trackback:ping><description><![CDATA[ <div id="1pjvr53" class="document"> <div id="z3xbnff" class="documentwrapper"> <div id="lnzbf53" class="bodywrapper"> <div id="53xhtv5" class="body"> <div id="fjdf5hh" class="section" id="pyqt4"> <h1>鍦?PyQt4 涓畾鍒剁粍浠?a class="headerlink" href="#pyqt4" title="Permalink to this headline">¶</a></h1> <p>PyQt4 鏈変赴瀵岀殑緇勪歡銆備絾鏄笉鍙兘鎻愪緵鎵鏈夌殑緇勪歡銆侾yQt4 涓粎浠呮彁渚涙渶甯哥敤鐨勭粍浠訛紝鍍忔寜閽紝鏂囨湰妗嗭紝婊戝潡絳夈傚鏋滄垜浠渶瑕佺壒孌婄殑緇勪歡錛屾垜浠繀欏昏鑷繁鍒涘緩銆?/p> <p>鑷畾鍒剁粍浠跺彲浠ヤ嬌鐢ㄥ伐鍏峰寘鐢誨埗宸ュ叿鍒涘緩銆傛湁涓ょ鍙兘錛屼竴涓▼搴忓憳鍙互淇敼鎴栨彁鍗囦竴涓凡瀛樺湪鐨勫伐鍏鳳紝鎴栨槸浠庨浂寮濮嬪垱寤恒?/p> <div id="33dz5nl" class="section" id="burning-widget"> <h2>Burning widget<a class="headerlink" href="#burning-widget" title="Permalink to this headline">¶</a></h2> <p>榪欐槸涓涓粍浠訛紝鎴戜滑鍙互鍦?Nero錛孠3B 鎴栧叾瀹?CD/DVD 鍒誨綍杞歡銆?/p> <div id="z355535" class="highlight-python"><div id="lfhdnzz" class="highlight"><pre><span id="1n3xt3n" class="c">#!/usr/bin/python</span> <span id="353jd1z" class="c"># -*- coding: utf-8 -*-</span> <span id="bnrlnzv" class="sd">"""</span> <span id="fzjf555" class="sd">ZetCode PyQt4 tutorial</span> <span id="zt3h55t" class="sd">In this example, we create a custom widget.</span> <span id="5xxhl3d" class="sd">author: Jan Bodnar</span> <span id="31x5n55" class="sd">website: zetcode.com</span> <span id="z5ltnf5" class="sd">last edited: October 2011</span> <span id="3b3nln5" class="sd">"""</span> <span id="5pvzbn3" class="kn">import</span> <span id="bf5pbb3" class="nn">sys</span> <span id="hj5dfnp" class="kn">from</span> <span id="tdt3hjt" class="nn">PyQt4</span> <span id="3j5hdtd" class="kn">import</span> <span id="jv5xjr5" class="n">QtGui</span><span id="bvjvh3x" class="p">,</span> <span id="trx5rh5" class="n">QtCore</span> <span id="l35prff" class="k">class</span> <span id="p1p3f3d" class="nc">Communicate</span><span id="frn5fx5" class="p">(</span><span id="3p5131d" class="n">QtCore</span><span id="tvp3ht3" class="o">.</span><span id="h3zld15" class="n">QObject</span><span id="p31hj1r" class="p">):</span> <span id="5zt55v1" class="n">updateBW</span> <span id="5xp1p3d" class="o">=</span> <span id="fjtzr3j" class="n">QtCore</span><span id="nhrfr5z" class="o">.</span><span id="3jbl3t5" class="n">pyqtSignal</span><span id="5rbdd5l" class="p">(</span><span id="35x3lrt" class="nb">int</span><span id="j13dfn1" class="p">)</span> <span id="3hr5l1b" class="k">class</span> <span id="3j11333" class="nc">BurningWidget</span><span id="zjtnfd5" class="p">(</span><span id="13p3j1n" class="n">QtGui</span><span id="33f511z" class="o">.</span><span id="jdx1ldn" class="n">QWidget</span><span id="31vrj3z" class="p">):</span> <span id="3553zp1" class="k">def</span> <span id="51lh3lb" class="nf">__init__</span><span id="zb3dn3t" class="p">(</span><span id="lpp31z1" class="bp">self</span><span id="3tlfv5p" class="p">):</span> <span id="3dln355" class="nb">super</span><span id="3zpr1vn" class="p">(</span><span id="jn3l31b" class="n">BurningWidget</span><span id="51bt3xh" class="p">,</span> <span id="1l5tvv1" class="bp">self</span><span id="d1p31v3" class="p">)</span><span id="55v51z3" class="o">.</span><span id="r3r3fd3" class="n">__init__</span><span id="z55b1z3" class="p">()</span> <span id="rzv315j" class="bp">self</span><span id="jxtzpd3" class="o">.</span><span id="dd11z5f" class="n">initUI</span><span id="f35xz3d" class="p">()</span> <span id="11lxtft" class="k">def</span> <span id="3x55hrv" class="nf">initUI</span><span id="3r3rjtl" class="p">(</span><span id="vttpjnj" class="bp">self</span><span id="315bzlv" class="p">):</span> <span id="33jbnvt" class="bp">self</span><span id="znh3xn3" class="o">.</span><span id="tbl3ddb" class="n">setMinimumSize</span><span id="l5z5dt5" class="p">(</span><span id="v3brd3f" class="mi">1</span><span id="db35xzj" class="p">,</span> <span id="135t3zj" class="mi">30</span><span id="drd3brf" class="p">)</span> <span id="vbvxbh3" class="bp">self</span><span id="pp3pttp" class="o">.</span><span id="drt5r35" class="n">value</span> <span id="3l3vp33" class="o">=</span> <span id="vt55brp" class="mi">75</span> <span id="5tr3j5h" class="bp">self</span><span id="dhl5t55" class="o">.</span><span id="jhz553b" class="n">num</span> <span id="3t53nbr" class="o">=</span> <span id="vj5xr3h" class="p">[</span><span id="hp5555v" class="mi">75</span><span id="zzrx3ff" class="p">,</span> <span id="xxh5rrh" class="mi">150</span><span id="ftx5pnt" class="p">,</span> <span id="jzjpxlj" class="mi">225</span><span id="lrtrdlr" class="p">,</span> <span id="jbtzdjn" class="mi">300</span><span id="5pbhlb5" class="p">,</span> <span id="3dhdnll" class="mi">375</span><span id="3r35lb5" class="p">,</span> <span id="fdzrzx3" class="mi">450</span><span id="pd3t3j1" class="p">,</span> <span id="vblvh35" class="mi">525</span><span id="r3h3zz5" class="p">,</span> <span id="zvhjvdr" class="mi">600</span><span id="5jl3n5v" class="p">,</span> <span id="3pj5vbz" class="mi">675</span><span id="vbf3b3n" class="p">]</span> <span id="vt5np3t" class="k">def</span> <span id="r5555tn" class="nf">setValue</span><span id="f3njltt" class="p">(</span><span id="b3jdfnn" class="bp">self</span><span id="3p3bvn5" class="p">,</span> <span id="3zrl35d" class="n">value</span><span id="xdprvdr" class="p">):</span> <span id="fd3df3z" class="bp">self</span><span id="pd5pt35" class="o">.</span><span id="3tv35d5" class="n">value</span> <span id="r5x3tjx" class="o">=</span> <span id="3t5p5x5" class="n">value</span> <span id="3fr355r" class="k">def</span> <span id="v533l3n" class="nf">paintEvent</span><span id="rxlnr5n" class="p">(</span><span id="ft5nh55" class="bp">self</span><span id="zn5h5p5" class="p">,</span> <span id="n3t3fft" class="n">e</span><span id="v5d53ph" class="p">):</span> <span id="1fj5tr5" class="n">qp</span> <span id="3zb35r5" class="o">=</span> <span id="r33fp3f" class="n">QtGui</span><span id="3t1trlb" class="o">.</span><span id="rnb1hb1" class="n">QPainter</span><span id="bp1r3xr" class="p">()</span> <span id="j5d151z" class="n">qp</span><span id="tr51f3b" class="o">.</span><span id="h1xjdvt" class="n">begin</span><span id="przprpv" class="p">(</span><span id="tfh113n" class="bp">self</span><span id="bv3jf3b" class="p">)</span> <span id="t535d55" class="bp">self</span><span id="1nltxxv" class="o">.</span><span id="ftp5lrp" class="n">drawWidget</span><span id="zthdznn" class="p">(</span><span id="33f555h" class="n">qp</span><span id="d3zzr3l" class="p">)</span> <span id="vjvfzfn" class="n">qp</span><span id="3zjlf35" class="o">.</span><span id="5x5rdbv" class="n">end</span><span id="3zdh3x5" class="p">()</span> <span id="z5fd3bl" class="k">def</span> <span id="33db5bj" class="nf">drawWidget</span><span id="335n3d5" class="p">(</span><span id="vt55th5" class="bp">self</span><span id="jnh3f3p" class="p">,</span> <span id="fjxzdtj" class="n">qp</span><span id="dpj5hpn" class="p">):</span> <span id="th5xphv" class="n">font</span> <span id="jp33vnl" class="o">=</span> <span id="drdnhnv" class="n">QtGui</span><span id="v35vxn5" class="o">.</span><span id="x3n35b3" class="n">QFont</span><span id="nbv5jr3" class="p">(</span><span id="3fpdn3z" class="s">'Serif'</span><span id="3d5htzz" class="p">,</span> <span id="jnh3vtb" class="mi">7</span><span id="fzlf35z" class="p">,</span> <span id="z3ljf35" class="n">QtGui</span><span id="flfx5h5" class="o">.</span><span id="3p5t55r" class="n">QFont</span><span id="3f335xr" class="o">.</span><span id="h3l3533" class="n">Light</span><span id="53dt5r5" class="p">)</span> <span id="x5dx5lx" class="n">qp</span><span id="335dxvt" class="o">.</span><span id="hdxznvt" class="n">setFont</span><span id="b3h3lr3" class="p">(</span><span id="1bzjlj5" class="n">font</span><span id="3jz55db" class="p">)</span> <span id="ptv3jrh" class="n">size</span> <span id="frlnrxx" class="o">=</span> <span id="ht355xn" class="bp">self</span><span id="z55npfn" class="o">.</span><span id="zn3t355" class="n">size</span><span id="3n5hbj3" class="p">()</span> <span id="drlnxn5" class="n">w</span> <span id="3d3lxv5" class="o">=</span> <span id="njvnpp5" class="n">size</span><span id="trbvxvp" class="o">.</span><span id="hn5l5tz" class="n">width</span><span id="335h5nt" class="p">()</span> <span id="335n5jr" class="n">h</span> <span id="z33f5bt" class="o">=</span> <span id="jfzb53v" class="n">size</span><span id="3hf3rxn" class="o">.</span><span id="rnn553b" class="n">height</span><span id="3zpzd5n" class="p">()</span> <span id="f5dpj3f" class="n">step</span> <span id="3v3xld3" class="o">=</span> <span id="rp5d355" class="nb">int</span><span id="3xdxrhf" class="p">(</span><span id="t3hbftj" class="nb">round</span><span id="dzlnhpv" class="p">(</span><span id="33xz5f5" class="n">w</span> <span id="r5dhlzp" class="o">/</span> <span id="3355r5n" class="mf">10.0</span><span id="5jl35jz" class="p">))</span> <span id="v5rv5bp" class="n">till</span> <span id="xbvxrzf" class="o">=</span> <span id="vhbnpfl" class="nb">int</span><span id="xf3lb3f" class="p">(((</span><span id="ptnr3jh" class="n">w</span> <span id="xb3zbrr" class="o">/</span> <span id="3zjnxp3" class="mf">750.0</span><span id="ptfj3jp" class="p">)</span> <span id="x5bfzxn" class="o">*</span> <span id="h55nxnv" class="bp">self</span><span id="fbnrttz" class="o">.</span><span id="pt3j3n5" class="n">value</span><span id="dzt3rzp" class="p">))</span> <span id="b5pzdb3" class="n">full</span> <span id="3t5v5r5" class="o">=</span> <span id="r5vh35p" class="nb">int</span><span id="z35vzpd" class="p">(((</span><span id="hlf3355" class="n">w</span> <span id="rppjlbh" class="o">/</span> <span id="3b555hz" class="mf">750.0</span><span id="nrtfhfl" class="p">)</span> <span id="5tv35br" class="o">*</span> <span id="r3v3b5x" class="mi">700</span><span id="xln33zh" class="p">))</span> <span id="rxhl3vb" class="k">if</span> <span id="t5z5hv5" class="bp">self</span><span id="13nrb5v" class="o">.</span><span id="335fh5t" class="n">value</span> <span id="jvhlnft" class="o">>=</span> <span id="d3b3vvj" class="mi">700</span><span id="1zb335t" class="p">:</span> <span id="bfrlxfl" class="n">qp</span><span id="rvh3535" class="o">.</span><span id="z3f3b5d" class="n">setPen</span><span id="nbvr3tj" class="p">(</span><span id="nrlh3h5" class="n">QtGui</span><span id="13j5t5x" class="o">.</span><span id="3zf3f5x" class="n">QColor</span><span id="x33vxnv" class="p">(</span><span id="b35prhz" class="mi">255</span><span id="d5rzt3j" class="p">,</span> <span id="v5jlhn3" class="mi">255</span><span id="nx5vpxn" class="p">,</span> <span id="bpr3fvj" class="mi">255</span><span id="vbv33pv" class="p">))</span> <span id="3fbt3rp" class="n">qp</span><span id="3n3jdjr" class="o">.</span><span id="f3r35dt" class="n">setBrush</span><span id="1xb3rzz" class="p">(</span><span id="3lnr5hn" class="n">QtGui</span><span id="z3555hf" class="o">.</span><span id="33rt5bb" class="n">QColor</span><span id="thd3px3" class="p">(</span><span id="1z35v53" class="mi">255</span><span id="1x355fb" class="p">,</span> <span id="53tdh55" class="mi">255</span><span id="btxlnhd" class="p">,</span> <span id="rvfjpbl" class="mi">184</span><span id="zthlhhj" class="p">))</span> <span id="znhrtlx" class="n">qp</span><span id="zfpbfnf" class="o">.</span><span id="rnzbddx" class="n">drawRect</span><span id="fvfhbjr" class="p">(</span><span id="thtlhff" class="mi">0</span><span id="ztvhhhj" class="p">,</span> <span id="bztvzxn" class="mi">0</span><span id="jlppljz" class="p">,</span> <span id="rnfzttj" class="n">full</span><span id="xlxhtrb" class="p">,</span> <span id="vrlxptl" class="n">h</span><span id="fdfztbr" class="p">)</span> <span id="vzjnxpn" class="n">qp</span><span id="hbfxzrx" class="o">.</span><span id="pzjbdnf" class="n">setPen</span><span id="zxbdffd" class="p">(</span><span id="drvnrtj" class="n">QtGui</span><span id="fjvfjzr" class="o">.</span><span id="djdppxp" class="n">QColor</span><span id="fblxpxf" class="p">(</span><span id="xtxrtrr" class="mi">255</span><span id="njbnphj" class="p">,</span> <span id="lfzjdbh" class="mi">175</span><span id="rdnphzz" class="p">,</span> <span id="dfblfff" class="mi">175</span><span id="rnpxzrz" class="p">))</span> <span id="xlnvpxl" class="n">qp</span><span id="bppbblj" class="o">.</span><span id="bvhzrbr" class="n">setBrush</span><span id="vpjrttj" class="p">(</span><span id="rdvhrrr" class="n">QtGui</span><span id="lprrnnv" class="o">.</span><span id="blfhrhr" class="n">QColor</span><span id="vrzddvn" class="p">(</span><span id="tffzbtr" class="mi">255</span><span id="ltnrjjr" class="p">,</span> <span id="xfpbtlj" class="mi">175</span><span id="xzzdndr" class="p">,</span> <span id="nhhjnxv" class="mi">175</span><span id="rbvfhhp" class="p">))</span> <span id="rbvvzpx" class="n">qp</span><span id="tnrlvbj" class="o">.</span><span id="hdx1nrx" class="n">drawRect</span><span id="pphj7h7" class="p">(</span><span id="dp7br77" class="n">full</span><span id="tx9r7np" class="p">,</span> <span id="jrfvz7z" class="mi">0</span><span id="r9bfbnn" class="p">,</span> <span id="9p7ztv7" class="n">till</span><span id="1t9btdb" class="o">-</span><span id="tv71jhv" class="n">full</span><span id="tbxn7hj" class="p">,</span> <span id="bh911lp" class="n">h</span><span id="dz9hzpl" class="p">)</span> <span id="bpd1xlp" class="k">else</span><span id="flx7nz7" class="p">:</span> <span id="lvx977t" class="n">qp</span><span id="j1lfp7f" class="o">.</span><span id="xh1dn9z" class="n">setPen</span><span id="9f7lvft" class="p">(</span><span id="7ljn717" class="n">QtGui</span><span id="91bfp1p" class="o">.</span><span id="7pbvxdv" class="n">QColor</span><span id="9l7rr11" class="p">(</span><span id="pl9rv1n" class="mi">255</span><span id="7vxl1rj" class="p">,</span> <span id="fjfxjzh" class="mi">255</span><span id="1x9lnfb" class="p">,</span> <span id="7j77rb9" class="mi">255</span><span id="79bd1vt" class="p">))</span> <span id="l1vx1hf" class="n">qp</span><span id="v11hrl9" class="o">.</span><span id="fn1x1jh" class="n">setBrush</span><span id="bhbl9dj" class="p">(</span><span id="hbb9tz7" class="n">QtGui</span><span id="7rd77zp" class="o">.</span><span id="7dfpjff" class="n">QColor</span><span id="91ffxnv" class="p">(</span><span id="7lr179p" class="mi">255</span><span id="19b1df7" class="p">,</span> <span id="1ptvjbb" class="mi">255</span><span id="t1rvh79" class="p">,</span> <span id="vxrfj7z" class="mi">184</span><span id="bz7hp77" class="p">))</span> <span id="xr1d91f" class="n">qp</span><span id="lxhld97" class="o">.</span><span id="dphbl9p" class="n">drawRect</span><span id="9xzjt71" class="p">(</span><span id="9dfr9n1" class="mi">0</span><span id="9p171dt" class="p">,</span> <span id="9nhz791" class="mi">0</span><span id="rvnh9l1" class="p">,</span> <span id="dhp9f1d" class="n">till</span><span id="9tvfhjz" class="p">,</span> <span id="x19l17p" class="n">h</span><span id="hbp7d1h" class="p">)</span> <span id="r9h77jv" class="n">pen</span> <span id="7d9tn99" class="o">=</span> <span id="7v9nbbb" class="n">QtGui</span><span id="d1j179d" class="o">.</span><span id="bf99l7n" class="n">QPen</span><span id="tlfbtlh" class="p">(</span><span id="n1n7zrd" class="n">QtGui</span><span id="ln1jl9j" class="o">.</span><span id="bn9xzld" class="n">QColor</span><span id="7bpjp1p" class="p">(</span><span id="17zlp7p" class="mi">20</span><span id="l1htnnd" class="p">,</span> <span id="x1rv1lt" class="mi">20</span><span id="7z1bdzx" class="p">,</span> <span id="jd9hjrj" class="mi">20</span><span id="97rrtfl" class="p">),</span> <span id="fjvxhhh" class="mi">1</span><span id="f9nn9jr" class="p">,</span> <span id="rjvpjpl" class="n">QtCore</span><span id="t9z9vlz" class="o">.</span><span id="lhtn1t1" class="n">Qt</span><span id="thz9vl9" class="o">.</span><span id="r1nh7rv" class="n">SolidLine</span><span id="17b97jr" class="p">)</span> <span id="7bt91nf" class="n">qp</span><span id="vhlvzhf" class="o">.</span><span id="1phrlj9" class="n">setPen</span><span id="1ltnpdt" class="p">(</span><span id="11xz1pv" class="n">pen</span><span id="jn1bvvn" class="p">)</span> <span id="bdhh7tp" class="n">qp</span><span id="1tlzz1h" class="o">.</span><span id="b97b1hp" class="n">setBrush</span><span id="rzl9xpd" class="p">(</span><span id="z1nptlr" class="n">QtCore</span><span id="bddvvdb" class="o">.</span><span id="1bp1rjz" class="n">Qt</span><span id="v7jlnv9" class="o">.</span><span id="fr7b97x" class="n">NoBrush</span><span id="77jdfvd" class="p">)</span> <span id="p1hl79d" class="n">qp</span><span id="vn9fj1l" class="o">.</span><span id="z9vphfd" class="n">drawRect</span><span id="7hzrz17" class="p">(</span><span id="l9tx77v" class="mi">0</span><span id="bzhdv77" class="p">,</span> <span id="zxzx7b9" class="mi">0</span><span id="l97xhrf" class="p">,</span> <span id="bdljn9d" class="n">w</span><span id="1ddvp91" class="o">-</span><span id="71dd11x" class="mi">1</span><span id="l9997z9" class="p">,</span> <span id="fj7jvtj" class="n">h</span><span id="1nxjzz7" class="o">-</span><span id="dxrlvbx" class="mi">1</span><span id="p9l7d1f" class="p">)</span> <span id="j197hrn" class="n">j</span> <span id="9br1x9j" class="o">=</span> <span id="1rbnp79" class="mi">0</span> <span id="xrj7j9j" class="k">for</span> <span id="9dnhzjz" class="n">i</span> <span id="fdf1n9z" class="ow">in</span> <span id="1hblfxf" class="nb">range</span><span id="91dnzvf" class="p">(</span><span id="phptdd1" class="n">step</span><span id="b1lr17h" class="p">,</span> <span id="h99fnnd" class="mi">10</span><span id="9jv7r91" class="o">*</span><span id="pd7dnt7" class="n">step</span><span id="919tlbz" class="p">,</span> <span id="91pbn11" class="n">step</span><span id="tlj17l7" class="p">):</span> <span id="fddpjzp" class="n">qp</span><span id="frr1l1h" class="o">.</span><span id="hb7fflt" class="n">drawLine</span><span id="lzzlvlj" class="p">(</span><span id="n11b7fd" class="n">i</span><span id="179dp1p" class="p">,</span> <span id="tdfhb7p" class="mi">0</span><span id="7b7nzfd" class="p">,</span> <span id="97x9l9j" class="n">i</span><span id="nb7p1z7" class="p">,</span> <span id="l991pvl" class="mi">5</span><span id="9b7t7d1" class="p">)</span> <span id="jpz1j99" class="n">metrics</span> <span id="pjlln71" class="o">=</span> <span id="f1n1h11" class="n">qp</span><span id="p11bhjt" class="o">.</span><span id="7l999x1" class="n">fontMetrics</span><span id="7prl17l" class="p">()</span> <span id="1j7pz1d" class="n">fw</span> <span id="v7vlx1l" class="o">=</span> <span id="9r19bb7" class="n">metrics</span><span id="719t9z7" class="o">.</span><span id="bll11h7" class="n">width</span><span id="drl79vv" class="p">(</span><span id="ddfhb1f" class="nb">str</span><span id="xlfjbvb" class="p">(</span><span id="fr7zl7l" class="bp">self</span><span id="lv1rd1h" class="o">.</span><span id="vzlv9hd" class="n">num</span><span id="pbfxbnn" class="p">[</span><span id="1x9fx9x" class="n">j</span><span id="1l7xrl1" class="p">]))</span> <span id="11vprjr" class="n">qp</span><span id="tfxbddb" class="o">.</span><span id="vp9xbz7" class="n">drawText</span><span id="t1b9n1r" class="p">(</span><span id="9vrd91z" class="n">i</span><span id="1d1hrtj" class="o">-</span><span id="frl7nx1" class="n">fw</span><span id="9d9z19z" class="o">/</span><span id="7n7ztlj" class="mi">2</span><span id="xzl19p9" class="p">,</span> <span id="tbbnh1r" class="n">h</span><span id="lrxn9jd" class="o">/</span><span id="99vpb9t" class="mi">2</span><span id="1n7xhrv" class="p">,</span> <span id="pf1tdv7" class="nb">str</span><span id="rzn91n7" class="p">(</span><span id="7x7fp7n" class="bp">self</span><span id="p1f91hb" class="o">.</span><span id="vdftbdf" class="n">num</span><span id="71tvvb7" class="p">[</span><span id="hnxrn9t" class="n">j</span><span id="l9dh9fn" class="p">]))</span> <span id="nhbbz7z" class="n">j</span> <span id="t17rlvv" class="o">=</span> <span id="xb1t77b" class="n">j</span> <span id="l79hnbj" class="o">+</span> <span id="x1p799r" class="mi">1</span> <span id="p7fh997" class="k">class</span> <span id="pdtdl9h" class="nc">Example</span><span id="zxrdvdh" class="p">(</span><span id="77j71t7" class="n">QtGui</span><span id="b9bv1ll" class="o">.</span><span id="77tf1bh" class="n">QWidget</span><span id="1pnrv71" class="p">):</span> <span id="xxvp1p9" class="k">def</span> <span id="t1f71z7" class="nf">__init__</span><span id="n1rdlvx" class="p">(</span><span id="7ft9dp1" class="bp">self</span><span id="7991h7r" class="p">):</span> <span id="1t9pp9h" class="nb">super</span><span id="lhjlzzb" class="p">(</span><span id="7dxzdd1" class="n">Example</span><span id="b19nz79" class="p">,</span> <span id="dlhl1td" class="bp">self</span><span id="zp1977v" class="p">)</span><span id="7h9j1h7" class="o">.</span><span id="jd1vjrt" class="n">__init__</span><span id="17ll1r9" class="p">()</span> <span id="lh119r9" class="bp">self</span><span id="pd7119v" class="o">.</span><span id="l9tdjjp" class="n">initUI</span><span id="zlxxzjz" class="p">()</span> <span id="tvfv77b" class="k">def</span> <span id="nprhl1b" class="nf">initUI</span><span id="hdxb111" class="p">(</span><span id="dtxzjzj" class="bp">self</span><span id="v9zjbtj" class="p">):</span> <span id="hj91rlt" class="n">sld</span> <span id="9hbtd9z" class="o">=</span> <span id="97pht1t" class="n">QtGui</span><span id="fhb9719" class="o">.</span><span id="t177977" class="n">QSlider</span><span id="l1f9jpp" class="p">(</span><span id="d7f9dd9" class="n">QtCore</span><span id="ndxrprb" class="o">.</span><span id="bpphvnf" class="n">Qt</span><span id="79prt1l" class="o">.</span><span id="dpdxbdh" class="n">Horizontal</span><span id="x7zb1n9" class="p">,</span> <span id="d9x1r71" class="bp">self</span><span id="lbnh9h9" class="p">)</span> <span id="l97frjj" class="n">sld</span><span id="17v791p" class="o">.</span><span id="dxxnbzh" class="n">setFocusPolicy</span><span id="fldh17r" class="p">(</span><span id="xj9v9tz" class="n">QtCore</span><span id="1ppb1hj" class="o">.</span><span id="1l9117b" class="n">Qt</span><span id="9xx119n" class="o">.</span><span id="rlrp971" class="n">NoFocus</span><span id="9d7f7nx" class="p">)</span> <span id="z9771hr" class="n">sld</span><span id="rj9lztj" class="o">.</span><span id="tx9frlj" class="n">setRange</span><span id="1jtd97b" class="p">(</span><span id="vpftj19" class="mi">1</span><span id="r1d1xzh" class="p">,</span> <span id="1dvfdvv" class="mi">750</span><span id="l7hf1ff" class="p">)</span> <span id="7t1n17d" class="n">sld</span><span id="jzftt9p" class="o">.</span><span id="9jp7ff1" class="n">setValue</span><span id="flj9v17" class="p">(</span><span id="nvlbnf1" class="mi">75</span><span id="7tzf7hh" class="p">)</span> <span id="x9ppn9v" class="n">sld</span><span id="vzdrf7d" class="o">.</span><span id="bvrvp7b" class="n">setGeometry</span><span id="nz7hnn7" class="p">(</span><span id="p7vrl9d" class="mi">30</span><span id="tzbdxhx" class="p">,</span> <span id="zlf7zbb" class="mi">40</span><span id="rtn7v9t" class="p">,</span> <span id="7h99zbz" class="mi">150</span><span id="lh77d9t" class="p">,</span> <span id="b9xj7th" class="mi">30</span><span id="vrdfzj9" class="p">)</span> <span id="vzb9f9j" class="bp">self</span><span id="9xpjfh9" class="o">.</span><span id="9hr99lj" class="n">c</span> <span id="9zdnzpx" class="o">=</span> <span id="bnzlfnt" class="n">Communicate</span><span id="lfzblbr" class="p">()</span> <span id="rtnhlzh" class="bp">self</span><span id="drtfznd" class="o">.</span><span id="9vp7zrz" class="n">wid</span> <span id="j979z9d" class="o">=</span> <span id="979jlbz" class="n">BurningWidget</span><span id="jz7nl7p" class="p">()</span> <span id="t99lflb" class="bp">self</span><span id="xjd79db" class="o">.</span><span id="td9jvlb" class="n">c</span><span id="xj9p7px" class="o">.</span><span id="979fppd" class="n">updateBW</span><span id="979rdrz" class="p">[</span><span id="7d7pj9d" class="nb">int</span><span id="7hbt7t9" class="p">]</span><span id="17xb99f" class="o">.</span><span id="j799npp" class="n">connect</span><span id="nh9dx9z" class="p">(</span><span id="b7hbv1d" class="bp">self</span><span id="txptn79" class="o">.</span><span id="97btfpx" class="n">wid</span><span id="fb7nhhv" class="o">.</span><span id="97h7v1z" class="n">setValue</span><span id="vfz79bz" class="p">)</span> <span id="v7tf77z" class="n">sld</span><span id="hdx79xp" class="o">.</span><span id="plfxz97" class="n">valueChanged</span><span id="fpd79dj" class="p">[</span><span id="rt7j79b" class="nb">int</span><span id="dfrlnlj" class="p">]</span><span id="bv977pf" class="o">.</span><span id="f7j7hh9" class="n">connect</span><span id="tv997x9" class="p">(</span><span id="xbvpr7l" class="bp">self</span><span id="dxbn99h" class="o">.</span><span id="r77x97f" class="n">changeValue</span><span id="vhdhbr7" class="p">)</span> <span id="jfr7zt9" class="n">hbox</span> <span id="vhbdh9b" class="o">=</span> <span id="p7bnzxv" class="n">QtGui</span><span id="hl9jldj" class="o">.</span><span id="rdvx7rh" class="n">QHBoxLayout</span><span id="9hlf9d9" class="p">()</span> <span id="779j9nv" class="n">hbox</span><span id="h111n7h" class="o">.</span><span id="7v9jft9" class="n">addWidget</span><span id="vv97d9h" class="p">(</span><span id="xtxbdtr" class="bp">self</span><span id="ndvpl7z" class="o">.</span><span id="7zjtxdl" class="n">wid</span><span id="lbv7v9j" class="p">)</span> <span id="7r99j7f" class="n">vbox</span> <span id="9pptv9d" class="o">=</span> <span id="9bvpjjf" class="n">QtGui</span><span id="9l7lhx9" class="o">.</span><span id="17b9fzx" class="n">QVBoxLayout</span><span id="xd7tvnb" class="p">()</span> <span id="9fr9dn9" class="n">vbox</span><span id="xtpzl7h" class="o">.</span><span id="ndpb7tj" class="n">addStretch</span><span id="nlfbd7z" class="p">(</span><span id="nbvh7zx" class="mi">1</span><span id="hpjnpfv" class="p">)</span> <span id="zv9x9n9" class="n">vbox</span><span id="hnprltb" class="o">.</span><span id="77pd99d" class="n">addLayout</span><span id="7bl99vt" class="p">(</span><span id="ltd7vn7" class="n">hbox</span><span id="9nptd7x" class="p">)</span> <span id="h7n79f9" class="bp">self</span><span id="77ldhff" class="o">.</span><span id="7d9phf9" class="n">setLayout</span><span id="lzt7jb7" class="p">(</span><span id="9vrb9hd" class="n">vbox</span><span id="979lhxt" class="p">)</span> <span id="1vhzltr" class="bp">self</span><span id="j9rb9bp" class="o">.</span><span id="97pjv9v" class="n">setGeometry</span><span id="hhbd79h" class="p">(</span><span id="dr9z9hn" class="mi">300</span><span id="hpjlpfv" class="p">,</span> <span id="9d9f9lb" class="mi">300</span><span id="9hrt9r9" class="p">,</span> <span id="1zldhhf" class="mi">390</span><span id="b9vfzzv" class="p">,</span> <span id="z7jlnnl" class="mi">210</span><span id="l7dnjh7" class="p">)</span> <span id="7b9frh9" class="bp">self</span><span id="z97zr7v" class="o">.</span><span id="9pjdf7r" class="n">setWindowTitle</span><span id="9phbd99" class="p">(</span><span id="xp77p9f" class="s">'Burning widget'</span><span id="9tl79tr" class="p">)</span> <span id="x99nzf9" class="bp">self</span><span id="lfrjdtb" class="o">.</span><span id="x79r9f9" class="n">show</span><span id="x99zj9d" class="p">()</span> <span id="9bxjlzf" class="k">def</span> <span id="t9bnpn7" class="nf">changeValue</span><span id="tfx1p77" class="p">(</span><span id="97tfbr9" class="bp">self</span><span id="vt799z7" class="p">,</span> <span id="tfz79tt" class="n">value</span><span id="7p7bndb" class="p">):</span> <span id="x7dp979" class="bp">self</span><span id="nlx7ffv" class="o">.</span><span id="xdfr9bz" class="n">c</span><span id="t7tnpnf" class="o">.</span><span id="9r999pn" class="n">updateBW</span><span id="979z7pl" class="o">.</span><span id="97pr9p7" class="n">emit</span><span id="f9prdbz" class="p">(</span><span id="b9xblt7" class="n">value</span><span id="r999xpn" class="p">)</span> <span id="lx7vzxn" class="bp">self</span><span id="hl77z99" class="o">.</span><span id="9nx79f9" class="n">wid</span><span id="dpjbdbb" class="o">.</span><span id="l19bp9h" class="n">repaint</span><span id="7z79blj" class="p">()</span> <span id="9799n97" class="k">def</span> <span id="j797bt7" class="nf">main</span><span id="jlf7dlj" class="p">():</span> <span id="nnz7pft" class="n">app</span> <span id="rtplfxn" class="o">=</span> <span id="fvpj9v9" class="n">QtGui</span><span id="7t9nhv9" class="o">.</span><span id="991ztj9" class="n">QApplication</span><span id="dtxpjrp" class="p">(</span><span id="j7v79tj" class="n">sys</span><span id="vjd7l77" class="o">.</span><span id="9x79d9h" class="n">argv</span><span id="xdxprpn" class="p">)</span> <span id="th7p7fl" class="n">ex</span> <span id="7799blj" class="o">=</span> <span id="9tz7dt7" class="n">Example</span><span id="dr9z99d" class="p">()</span> <span id="9bf7znf" class="n">sys</span><span id="pnh7vv7" class="o">.</span><span id="lztblb7" class="n">exit</span><span id="xdx7dlb" class="p">(</span><span id="r79bd7f" class="n">app</span><span id="rnhpzp7" class="o">.</span><span id="pvhtllr" class="n">exec_</span><span id="db77znd" class="p">())</span> <span id="xdxtv7b" class="k">if</span> <span id="pl7jn7p" class="n">__name__</span> <span id="drl79xx" class="o">==</span> <span id="vr7z77l" class="s">'__main__'</span><span id="t9nxtzh" class="p">:</span> <span id="7x9xjbz" class="n">main</span><span id="zvprdlj" class="p">()</span> </pre></div> </div> <p>鍦ㄨ繖涓緥瀛愪腑錛屾垜浠湁涓涓?<tt class="docutils literal"><span id="7jvvrhv" class="pre">QtGui.QSlider</span></tt> 鍜屼竴涓嚜瀹氬埗緇勪歡銆傛粦鍧楁帶鍒朵簡鑷畾鍒剁粍浠躲傝繖涓粍浠舵樉紺轟竴涓獟浠嬫葷殑瀹歸噺浠ュ強鍓╀綑鐨勫閲忋傝繖閲屾渶灝忕殑鍊兼槸 1錛屾渶澶ф槸 750 銆傚鏋滄垜浠埌杈?700 錛屾垜浠紑濮嬬敾綰㈣壊銆傝繖鏄敤浜庢寚紺鴻繃搴︾儳鍒躲?/p> <p>緇勪歡鏀懼湪紿楀彛鐨勫簳閮ㄣ傝繖閫氳繃涓涓?<tt class="docutils literal"><span id="97tnhfn" class="pre">QtGui.QHBoxLayout</span></tt> 鍜?<tt class="docutils literal"><span id="7dfxb9l" class="pre">QtGui.QVBoxLayout</span></tt> 瀹炵幇銆?/p> <div id="p9j1vt9" class="highlight-python"><div id="nrvh9hf" class="highlight"><pre><span id="9dn9jh9" class="k">class</span> <span id="pd7l7bp" class="nc">BurningWidget</span><span id="bhb7h9b" class="p">(</span><span id="h9hbdbt" class="n">QtGui</span><span id="djvxb7z" class="o">.</span><span id="hth7pdd" class="n">QWidget</span><span id="t7tv7jh" class="p">):</span> <span id="vbv7drz" class="k">def</span> <span id="pfz7nn7" class="nf">__init__</span><span id="97p7t97" class="p">(</span><span id="h7xjvt7" class="bp">self</span><span id="vj9797z" class="p">):</span> <span id="zf799pf" class="nb">super</span><span id="f9xzbbz" class="p">(</span><span id="7dxdxlt" class="n">BurningWidget</span><span id="lr7rljb" class="p">,</span> <span id="vrvzb9h" class="bp">self</span><span id="77z99hp" class="p">)</span><span id="hxr7lbz" class="o">.</span><span id="9n9pzpx" class="n">__init__</span><span id="x7xj7p7" class="p">()</span> </pre></div> </div> <p>榪欎釜緇勪歡鍩轟簬 <tt class="docutils literal"><span id="vtnrjj7" class="pre">QtGui.QWidget</span></tt> 緇勪歡銆?/p> <div id="jxbn7pd" class="highlight-python"><div id="7nxt7z9" class="highlight"><pre><span id="9bdxbrv" class="bp">self</span><span id="9lnh79b" class="o">.</span><span id="lzth7bz" class="n">setMinimumSize</span><span id="7fhrnl7" class="p">(</span><span id="7tvpt79" class="mi">1</span><span id="t7j9b99" class="p">,</span> <span id="hxr7vl7" class="mi">30</span><span id="97999z7" class="p">)</span> </pre></div> </div> <p>鎴戜滑鏇存敼浜嗙粍浠舵渶灝忕殑澶у皬錛堥珮搴︼級銆傞粯璁ょ殑鍊兼槸涓鐐圭偣灝忋?/p> <div id="7hbfpxn" class="highlight-python"><div id="frt7zr7" class="highlight"><pre><span id="z9pr7ff" class="n">font</span> <span id="97jdfd9" class="o">=</span> <span id="tpb7hxh" class="n">QtGui</span><span id="xvj7ffv" class="o">.</span><span id="7f99jr9" class="n">QFont</span><span id="vl9jt9d" class="p">(</span><span id="7bt979j" class="s">'Serif'</span><span id="hbv9f99" class="p">,</span> <span id="9fhfzrj" class="mi">7</span><span id="xjdb7l7" class="p">,</span> <span id="lztvh7f" class="n">QtGui</span><span id="979njxv" class="o">.</span><span id="xdd7r79" class="n">QFont</span><span id="nj999lz" class="o">.</span><span id="7v9rl99" class="n">Light</span><span id="9fpjllj" class="p">)</span> <span id="9t9n9lz" class="n">qp</span><span id="b77f99x" class="o">.</span><span id="zlz799n" class="n">setFont</span><span id="p7vhrrh" class="p">(</span><span id="txrvfnt" class="n">font</span><span id="9xhd79b" class="p">)</span> </pre></div> </div> <p>鎴戜滑鐢ㄥ皬浜庨粯璁ょ殑瀛椾綋銆傝繖閫傚悎浜庢垜浠殑闇瑕併?/p> <div id="ft979v9" class="highlight-python"><div id="l7zl799" class="highlight"><pre><span id="7dxzlj7" class="n">size</span> <span id="979b99h" class="o">=</span> <span id="7nxjvbb" class="bp">self</span><span id="d9z79zx" class="o">.</span><span id="r79nph9" class="n">size</span><span id="9hbv7tt" class="p">()</span> <span id="vbv7vjj" class="n">w</span> <span id="dh999hz" class="o">=</span> <span id="bpb7779" class="n">size</span><span id="7x7bnlb" class="o">.</span><span id="dztlfdd" class="n">width</span><span id="h79999h" class="p">()</span> <span id="9pt9f9j" class="n">h</span> <span id="bfbn7fl" class="o">=</span> <span id="lxrvz9l" class="n">size</span><span id="t9htf7x" class="o">.</span><span id="7p7bxnd" class="n">height</span><span id="j79vxp9" class="p">()</span> <span id="drdpzff" class="n">step</span> <span id="v7bvp79" class="o">=</span> <span id="tf7tn7p" class="nb">int</span><span id="7r99h9h" class="p">(</span><span id="7lx7t9v" class="nb">round</span><span id="p7bfxxl" class="p">(</span><span id="9hlnr99" class="n">w</span> <span id="r7f7z9l" class="o">/</span> <span id="7t7nh9r" class="mf">10.0</span><span id="b7n9frf" class="p">))</span> <span id="vtn77hn" class="n">till</span> <span id="pztpjzv" class="o">=</span> <span id="7lf7fht" class="nb">int</span><span id="lxbl7nt" class="p">(((</span><span id="thlxr7v" class="n">w</span> <span id="zffh7rz" class="o">/</span> <span id="rfzjv7p" class="mf">750.0</span><span id="nhbf7nl" class="p">)</span> <span id="rdfzt79" class="o">*</span> <span id="9jt9dl9" class="bp">self</span><span id="dzr999f" class="o">.</span><span id="9hbt7r9" class="n">value</span><span id="f9blf79" class="p">))</span> <span id="9bnxzdx" class="n">full</span> <span id="tz77v7v" class="o">=</span> <span id="frd7bh7" class="nb">int</span><span id="drd77tr" class="p">(((</span><span id="dx7vjlr" class="n">w</span> <span id="9xr9979" class="o">/</span> <span id="v77jtnb" class="mf">750.0</span><span id="h7jdxvt" class="p">)</span> <span id="ptdx7z7" class="o">*</span> <span id="lfrd7vj" class="mi">700</span><span id="7x79tjh" class="p">))</span> </pre></div> </div> <p>鎴戜滑鍔ㄦ佸湴緇樺埗緇勪歡銆傜獥鍙h秺澶э紝緇勪歡浼氳秺澶с傚弽涔嬩害鐒躲傝繖灝辨槸涓轟綍鎴戜滑瑕佽綆楃粍浠剁殑澶у皬銆傚弬鏁?till 鍐沖畾浜嗚鐢誨灝戙傛鍊兼潵鑷簬婊戝潡緇勪歡銆傝繖鏄暣涓尯鍩熺殑閮ㄥ垎鍊箋傚弬鏁?full 鍐沖畾浜嗕粈涔堟椂鍊欏紑濮嬬粯鍒剁孩鑹查儴鍒嗐傛敞鎰忥紝姝ゅ浣跨敤浜嗘誕鐐硅繍綆楋紝鏄負鏇撮珮鐨勭簿搴︺?/p> <p>鐪熸緇樺埗鏃跺寘鍚笁涓儴鍒嗐傛垜浠厛緇樺埗榛勮壊鎴栫孩鑹插拰榛勮壊鐨勭煩褰€傜劧鍚庣粯鍒跺瀭鐩寸殑綰匡紝涓昏鐢ㄤ簬鍒嗗壊緇勪歡銆傛渶鍚庢槸緇樺埗鏁板瓧錛岀敤浜庢寚紺哄獟浠嬬殑澶у皬銆?/p> <div id="j9d77d9" class="highlight-python"><div id="7zj9t99" class="highlight"><pre><span id="7lx7xfd" class="n">metrics</span> <span id="h7z7djr" class="o">=</span> <span id="9d9hz9t" class="n">qp</span><span id="7p9799n" class="o">.</span><span id="xrd7dv7" class="n">fontMetrics</span><span id="9bvpr7d" class="p">()</span> <span id="97zlpzx" class="n">fw</span> <span id="hl99h9t" class="o">=</span> <span id="9dvj9zx" class="n">metrics</span><span id="rxr7dj7" class="o">.</span><span id="n9x7rrf" class="n">width</span><span id="p9vh7vb" class="p">(</span><span id="7nr9brz" class="nb">str</span><span id="bdp7lbp" class="p">(</span><span id="9n9z9xn" class="bp">self</span><span id="xtntv79" class="o">.</span><span id="pl7t7jp" class="n">num</span><span id="7d9frtz" class="p">[</span><span id="jv7b7jh" class="n">j</span><span id="hv79z9z" class="p">]))</span> <span id="7htlnn7" class="n">qp</span><span id="7z9tv9x" class="o">.</span><span id="lpbdh7t" class="n">drawText</span><span id="hnzr7t7" class="p">(</span><span id="97pb9zh" class="n">i</span><span id="b7xr979" class="o">-</span><span id="9jlx99h" class="n">fw</span><span id="ftn79n7" class="o">/</span><span id="t7f7jh9" class="mi">2</span><span id="9prvln9" class="p">,</span> <span id="7zbfhpp" class="n">h</span><span id="pjf7btr" class="o">/</span><span id="zvpzl7p" class="mi">2</span><span id="n7r7bbh" class="p">,</span> <span id="tph7fvd" class="nb">str</span><span id="fz79n9n" class="p">(</span><span id="l7fj79b" class="bp">self</span><span id="tx7v79x" class="o">.</span><span id="jdz779d" class="n">num</span><span id="lhz7pnt" class="p">[</span><span id="7np9pf9" class="n">j</span><span id="77jdzpf" class="p">]))</span> </pre></div> </div> <p>鎴戜滑浣跨敤瀛椾綋搴﹂噺鏉ョ粯鍒舵枃鏈傛垜浠繀欏昏鐭ラ亾鏂囨湰鐨勫搴︽潵灞呬腑緇樺埗銆?/p> <div id="dx7f9pp" class="highlight-python"><div id="f7z7tt9" class="highlight"><pre><span id="7tx7vlt" class="k">def</span> <span id="7r7f9nb" class="nf">changeValue</span><span id="9b9lzh9" class="p">(</span><span id="j7lp7n7" class="bp">self</span><span id="97xbdbr" class="p">,</span> <span id="nrdjbzh" class="n">value</span><span id="lzz99hh" class="p">):</span> <span id="9h99xxd" class="bp">self</span><span id="zlflndb" class="o">.</span><span id="z7b999z" class="n">c</span><span id="9r99tbr" class="o">.</span><span id="vzl99nd" class="n">updateBW</span><span id="9jrvr99" class="o">.</span><span id="t9n7xnt" class="n">emit</span><span id="n7ptnvl" class="p">(</span><span id="tppfp7x" class="n">value</span><span id="bdz79pl" class="p">)</span> <span id="p9jdz7d" class="bp">self</span><span id="dx9dn79" class="o">.</span><span id="7hbpl9d" class="n">wid</span><span id="xrlp99d" class="o">.</span><span id="zlzj7vt" class="n">repaint</span><span id="l9pbn99" class="p">()</span> </pre></div> </div> <p>鎴戜滑縐誨姩婊戝潡鏃訛紝 <tt class="docutils literal"><span id="nj99j9b" class="pre">changeValue()</span></tt> 鏂規硶灝辮璋冪敤浜嗐傚湪姝ゆ柟娉曞唴閮紝鎴戜滑鍙戦佷簡鑷畾涔夌殑 updateBW 淇″彿錛屽茍涓斿甫浜嗕竴涓弬鏁般傝繖涓弬鏁版槸褰撳墠婊戝潡鐨勫箋傝繖涓肩敤浜庤綆楀湪 Burning 榪欎釜緇勪歡涓緇樺埗澶氬皯銆傝嚜瀹氫箟鐨勭粍浠剁劧鍚庤閲嶇粯銆?/p> <hr class="docutils" /> <p>鏈儴鍒嗭紝鎴戜滑鍒涘緩浜嗚嚜宸辯殑緇勪歡銆?/p> </div> </div> </div> </div> </div> <img src ="http://www.shnenglu.com/mirguest/aggbug/165391.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mirguest/" target="_blank">mirguest</a> 2012-02-12 10:17 <a href="http://www.shnenglu.com/mirguest/archive/2012/02/12/165391.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[Python][PyQt4]鍦?PyQt4 涓粯鍥?/title><link>http://www.shnenglu.com/mirguest/archive/2012/02/12/165390.html</link><dc:creator>mirguest</dc:creator><author>mirguest</author><pubDate>Sun, 12 Feb 2012 02:16:00 GMT</pubDate><guid>http://www.shnenglu.com/mirguest/archive/2012/02/12/165390.html</guid><wfw:comment>http://www.shnenglu.com/mirguest/comments/165390.html</wfw:comment><comments>http://www.shnenglu.com/mirguest/archive/2012/02/12/165390.html#Feedback</comments><slash:comments>2</slash:comments><wfw:commentRss>http://www.shnenglu.com/mirguest/comments/commentRss/165390.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mirguest/services/trackbacks/165390.html</trackback:ping><description><![CDATA[     鎽樿: 鍦?PyQt4 涓粯鍥?#182; 緇樺浘甯哥敤浜庯紝褰撴垜浠兂鏀瑰彉涓涓凡瀛樺湪鐨勭粍浠訛紝鎴栬呮槸鎴戜滑甯屾湜鑷繁鍒涘緩緇勪歡銆備負浜嗗疄鐜扮粯鍥撅紝鎴戜滑鍙互浣跨敤 PyQt4 涓彁渚涚殑 API 銆?緇樺埗涓鑸敱 paintEvent() 鏂規硶澶勭悊銆傜粯鍒剁殑浠g爜鏀劇疆浜?QtGui.QPainter 瀵硅薄鐨?begin() 涓?end() 涔嬮棿銆? 緇樺埗鏂囨湰¶ 鎴戜滑鍙互鎶婁竴浜?Unicode 鏂囨湰緇樺埗鍒板睆騫曚笂銆?...  <a href='http://www.shnenglu.com/mirguest/archive/2012/02/12/165390.html'>闃呰鍏ㄦ枃</a><img src ="http://www.shnenglu.com/mirguest/aggbug/165390.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mirguest/" target="_blank">mirguest</a> 2012-02-12 10:16 <a href="http://www.shnenglu.com/mirguest/archive/2012/02/12/165390.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item><item><title>[Python][PyQt4]鍦?PyQt4 涓?drag 鍜?drophttp://www.shnenglu.com/mirguest/archive/2012/02/12/165389.htmlmirguestmirguestSun, 12 Feb 2012 02:14:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/02/12/165389.htmlhttp://www.shnenglu.com/mirguest/comments/165389.htmlhttp://www.shnenglu.com/mirguest/archive/2012/02/12/165389.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/165389.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/165389.html

鍦?PyQt4 涓?drag 鍜?drop

鏈儴鍒嗭紝鎴戜滑灝嗚璁?drag 鍜?drop 鎿嶄綔銆?/p>

鍦ㄨ綆楁満涓殑鍥懼艦鐣岄潰涓紝 drag-and-drop 鏄緥濡傜偣鍑誨埌涓涓櫄鎷熷璞″茍鎶婂畠鎷栧埌鍙﹀鐨勪綅緗笂鐨勮涓恒備竴鑸潵璇達紝榪欏彲浠ョ敤浜庡緢澶氳涓猴紝鎴栧垱寤轟袱涓璞¢棿鐨勫叧鑱斻傦紙Wikipedia錛?/p>

drag 鍜?drop 鐨勫姛鑳芥槸 GUI 鏈鏈夌敤鐨勫姛鑳戒箣涓銆傚畠鍙互鏄敤鎴峰鐞嗗鏉傜殑宸ヤ綔銆?/p>

涓鑸潵璇達紝鎴戜滑鍙互 drag 鍜?drop 涓ょ涓滆タ錛屾暟鎹垨鍥懼艦瀵硅薄銆傚鏋滄垜浠惂涓騫呭浘鍍忎粠涓涓簲鐢ㄦ嫋鍒板彟涓涓簲鐢紝鎴戜滑澶勭悊鐨勬槸浜岃繘鍒舵暟鎹傚鏋滄垜浠湪 Firefox 涓嫋鍔ㄤ簡涓涓爣絳撅紝鎴戜滑鎷栫殑鍒欐槸涓涓浘褰㈢粍浠躲?/p>

綆鍗曠殑 Drag 鍜?Drop

絎竴涓緥瀛愶紝鎴戜滑灝嗘湁涓涓?QtGui.QLineEdit 鍜?QtGui.QPushButton 銆傛垜浠皢浠庤緙栬緫鍖烘嫋鍔ㄦ枃鏈埌鎸夐挳涓娿?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
This is a simple drag and
drop example.
author: Jan Bodnar
website: zetcode.com
last edited: December 2010
"""
import sys
from PyQt4 import QtGui
class Button(QtGui.QPushButton):
    def __init__(self, title, parent):
        super(Button, self).__init__(title, parent)
        self.setAcceptDrops(True)
    def dragEnterEvent(self, e):
        if e.mimeData().hasFormat('text/plain'):
            e.accept()
        else:
            e.ignore()
    def dropEvent(self, e):
        self.setText(e.mimeData().text())
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        edit = QtGui.QLineEdit('', self)
        edit.setDragEnabled(True)
        edit.move(30, 65)
        button = Button("Button", self)
        button.move(190, 65)
        self.setWindowTitle('Simple Drag & Drop')
        self.setGeometry(300, 300, 300, 150)
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    ex.show()
    app.exec_()
if __name__ == '__main__':
    main()

綆鍗曠殑鎷栨嫿鎿嶄綔銆?/p>

class Button(QtGui.QPushButton):
    def __init__(self, title, parent):
        super(Button, self).__init__(title, parent)

涓轟簡鍙互鎶婃枃瀛楁嫋鍒?QtGui.QPushButton 緇勪歡涓婏紝鎴戜滑蹇呴渶瑕侀噸鏂板疄鐜頒竴浜涙柟娉曘傛墍浠ユ垜浠垱寤轟簡鎴戜滑鑷繁鐨勬寜閽被銆傚畠浠?QtGui.QPushButton 媧劇敓銆?/p>

self.setAcceptDrops(True)

鎴戜滑寮鍚厑璁告帴鍙楁嫋鍏ョ殑浜嬩歡銆?/p>

def dragEnterEvent(self, e):
    if e.mimeDate().hasFormat('text/plain'):
        e.accept()
    else:
        e.ignore()

棣栧厛錛屾垜浠噸鏂板疄鐜頒簡 drageEnterEvent() 鏂規硶銆傛垜浠皢鎺ュ彈鐗瑰畾鐨勬暟鎹被鍨嬶紝姝ゅ鏄函鏂囨湰銆?/p>

def dropEvent(self, e):
    self.setText(e.mimeDate().text())

閫氳繃閲嶆柊瀹炵幇 dropEvent() 鏂規硶錛屾垜浠畾涔変簡鏀句笅鍚庡鐞嗙殑浜嬩歡銆傛垜浠湪榪欓噷鏄敼鍙樹簡鎸夐挳涓殑鏄劇ず鏂囨湰銆?/p>

edit = QtGui.QLineEdit('', self)
edit.setDragEnabled(True)

QtGui.QLineEdit 緇勪歡鏈夊唴緗殑鎷栨嫿鎿嶄綔銆傛垜浠彧闇瑕佽皟鐢?setDragEnabled() 嬋媧誨畠灝卞彲浠ヤ簡銆?/p>

鎷栨嫿涓涓寜閽粍浠?a class="headerlink" href="#id1" title="Permalink to this headline">¶

涓嬮潰鐨勪緥瀛愶紝鎴戜滑灝嗕粙緇嶅浣曟嫋鎷戒竴涓寜閽璞°?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this program, we can press
on a button with a left mouse
click or drag and drop the button
with  the right mouse click.
author: Jan Bodnar
website: zetcode.com
last edited: December 2010
"""
import sys
from PyQt4 import QtGui
from PyQt4 import QtCore
class Button(QtGui.QPushButton):
    def __init__(self, title, parent):
        super(Button, self).__init__(title, parent)
    def mouseMoveEvent(self, e):
        if e.buttons() != QtCore.Qt.RightButton:
            return
        mimeData = QtCore.QMimeData()
        drag = QtGui.QDrag(self)
        drag.setMimeData(mimeData)
        drag.setHotSpot(e.pos() - self.rect().topLeft())
        dropAction = drag.start(QtCore.Qt.MoveAction)
    def mousePressEvent(self, e):
        QtGui.QPushButton.mousePressEvent(self, e)
        if e.button() == QtCore.Qt.LeftButton:
            print 'press'
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        self.setAcceptDrops(True)
        self.button = Button('Button', self)
        self.button.move(100, 65)
        self.setWindowTitle('Click or Move')
        self.setGeometry(300, 300, 280, 150)
    def dragEnterEvent(self, e):
        e.accept()
    def dropEvent(self, e):
        position = e.pos()
        self.button.move(position)
        e.setDropAction(QtCore.Qt.MoveAction)
        e.accept()
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    ex.show()
    app.exec_()
if __name__ == '__main__':
    main()

鍦ㄨ繖涓緥瀛愪腑錛屾垜浠湁涓涓?QtGui.QPushButton 鍦ㄧ獥鍙d笂銆傚鏋滄垜浠偣鍑繪寜閽紝灝嗗湪鎺у埗鍙頒笂杈撳嚭 ‘press’ 銆傝屽鏋滃彸鍑繪寜閽茍涓旂Щ鍔紝鎴戜滑灝卞彲浠ユ嫋鎷借繖涓寜閽粍浠躲?/p>

class Button(QtGui.QPushButton):
    def __init__(self, title, parent):
        super(Button, self).__init__(title, parent)

鎴戜滑鍒涘緩浜嗕竴涓淳鐢熻嚜 QtGui.QPushButton 鐨勬寜閽被銆傛垜浠繕閲嶆柊瀹炵幇浜?QtGui.QPushButton 涓殑涓や釜鏂規硶錛?mouseMoveEvent() 鍜?mousePressEvent() 銆傚叾涓紝 mouseMoveEvent() 鏂規硶鏄紑濮嬫嫋鎷藉鍙戠敓鐨勫湴鏂廣?/p>

if event.buttons() != QtCore.Qt.RightButton:
    return

鎴戜滑鍐沖畾鍙敤榧犳爣鍙沖嚮榪涜鎷栨嫿銆傚乏鍑葷敤浜庣偣鍑繪寜閽?/p>

mimeData = QtCore.QMimeData()
drag = QtGui.QDrag(self)
drag.setMimeData(mimeData)
drag.setHotSpot(event.pos() - self.rect().topLeft())

鎴戜滑鍒涘緩浜嗕竴涓?QDrag 瀵硅薄銆?/p>

dropAction = drag.start(QtCore.Qt.MoveAction)

start() 鏂規硶寮濮嬫嫋鎷芥搷浣溿?/p>

def mousePressEvent(self, e):
    QtGui.QPushButton.mousePressEvent(self, e)
    if e.button() == QtCore.Qt.LeftButton:
        print 'press'

濡傛灉鐐瑰嚮浜嗛紶鏍囧乏閿紝鎴戜滑鍦ㄦ帶鍒跺彴涓婃墦鍗?‘press’ 銆傛敞鎰忥紝鎴戜滑榪樿皟鐢ㄤ簡鐖剁被鐨?mousePressEvent() 鏂規硶銆傚惁鍒欙紝鎴戜滑灝嗕笉浼氱湅鍒版寜閽鎸変笅銆?/p>

position = e.pos()
self.button.move(position)

鍦?dropEvent() 鏂規硶涓紝瀹氫箟浜嗗綋鎴戜滑鏉懼紑榧犳爣鎸夐挳鍋滄鎷栨嫿鐨勮涓恒傛垜浠壘鍒伴紶鏍囧綋鍓嶇殑浣嶇疆錛屽茍鎶婃寜閽Щ鍒板悎閫傜殑浣嶇疆銆?/p>

e.setDropAction(QtCore.Qt.MoveAction)
e.accept()

鎴戜滑鎸囧畾浜嗘嫋鎷界殑綾誨瀷銆傚湪姝ゅ鏄Щ鍔ㄧ殑琛屼負銆?/p>


鏈儴鍒嗘垜浠璁轟簡鎷栨嫿銆?/p>



mirguest 2012-02-12 10:14 鍙戣〃璇勮
]]>
[Python][PyQt4]PyQt4 Widget IIhttp://www.shnenglu.com/mirguest/archive/2012/02/12/165388.htmlmirguestmirguestSun, 12 Feb 2012 02:13:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/02/12/165388.htmlhttp://www.shnenglu.com/mirguest/comments/165388.htmlhttp://www.shnenglu.com/mirguest/archive/2012/02/12/165388.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/165388.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/165388.html

PyQt4 Widget II

榪欓噷鎴戜滑灝嗙戶緇粙緇?PyQt4 緇勪歡銆傛垜浠皢娑夊強 QtGui.QPixmap 錛?QtGui.QLineEdit 錛?QtGui.QSplitter 鍜?QtGui.QComboBox 銆?/p>

QtGui.QPixmap

QtGui.QPixmap 鏄彲浠ュ鐞嗗浘鐗囩殑緇勪歡涔嬩竴銆傚畠瀵規樉紺哄浘鐗囪繘琛屼簡浼樺寲銆傚湪鎴戜滑鐨勪緥瀛愪腑錛屾垜浠細鐢?QtGui.QPixmap 鏉ユ樉紺哄浘鐗囥?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this example, we dispay an image
on the window.
author: Jan Bodnar
website: zetcode.com
last edited: September 2011
"""
import sys
from PyQt4 import QtGui, QtCore
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        hbox = QtGui.QHBoxLayout(self)
        pixmap = QtGui.QPixmap("redrock.png")
        lbl = QtGui.QLabel(self)
        lbl.setPixmap(pixmap)
        hbox.addWidget(lbl)
        self.setLayout(hbox)
        self.move(300, 200)
        self.setWindowTitle('Red Rock')
        self.show()
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

鍦ㄨ繖涓緥瀛愰噷錛屾垜浠樉紺轟簡涓騫呭浘鐗囥?/p>

pixmap = QtGui.QPixmap("redrock.png")

鎴戜滑鍒涘緩浜嗕竴涓?QtGui.QPixmap 瀵硅薄銆傚畠鎺ュ彈鏂囦歡鍚嶄綔涓哄弬鏁般?/p>

lbl = QtGui.QLabel(self)
lbl.setPixmap(pixmap)

鎴戜滑鎶?pixmap 鏀懼埌浜?QtGui.QLabel 涓?/p>

QtGui.QLineEdit

QtGui.QLineEdit 鏄竴涓厑璁歌緭鍏ュ拰緙栬緫涓琛岀函鏂囨湰銆傝繖涓粍浠朵腑鍙互鎾ら攢/鎭㈠錛屽壀鍒?綺樿創浠ュ強鎷栨媺銆?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
This example shows text which
is entered in a QtGui.QLineEdit
in a QtGui.QLabel widget.
author: Jan Bodnar
website: zetcode.com
last edited: August 2011
"""
import sys
from PyQt4 import QtGui, QtCore
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        self.lbl = QtGui.QLabel(self)
        qle = QtGui.QLineEdit(self)
        qle.move(60, 100)
        self.lbl.move(60, 40)
        qle.textChanged[str].connect(self.onChanged)
        self.setGeometry(300, 300, 280, 170)
        self.setWindowTitle('QtGui.QLineEdit')
        self.show()
    def onChanged(self, text):
        self.lbl.setText(text)
        self.lbl.adjustSize()
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

榪欎釜渚嬪瓙鏄劇ず涓涓緙栬緫鍖哄拰涓涓爣絳俱傛垜浠緭鍏ョ殑灝變細绔嬪嵆鍦ㄦ爣絳句腑鏄劇ず銆?/p>

qle = QtGui.QLineEdit(self)

鍒涘緩浜?QtGui.QLineEdit 緇勪歡銆?/p>

qle.textChanged[str].connect(self.onChanged)

濡傛灉鏂囨湰鍖虹殑鏂囨湰鏀瑰彉浜嗭紝鎴戜滑灝辮皟鐢?onChanged() 鏂規硶銆?/p>

def onChanged(self, text):
    self.lbl.setText(text)
    self.lbl.adjustSize()

鍦?onChanged() 鏂規硶涓紝鎴戜滑鎶婅緭鍏ョ殑鏂囨湰鏀懼埌浜嗘爣絳句腑銆傞氳繃璋冪敤 adjustSize() 鏂規硶錛屾垜浠妸鏍囩璁劇疆鍒版枃鏈殑闀垮害銆?/p>

QtGui.QSplitter

QtGui.QSplitter 鍙互璁╃敤鎴鋒帶鍒跺瓙緇勪歡鐨勫ぇ灝忥紝閫氳繃鎷栧姩瀛愮粍浠剁殑澶у皬銆傚湪鎴戜滑鐨勪緥瀛愪腑錛屾垜浠殑涓変釜 QtGui.QFrame 灝嗙敱涓や釜 splitter 鍒嗗壊銆?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
This example shows
how to use QtGui.QSplitter widget.
author: Jan Bodnar
website: zetcode.com
last edited: September 2011
"""
import sys
from PyQt4 import QtGui, QtCore
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        hbox = QtGui.QHBoxLayout(self)
        topleft = QtGui.QFrame(self)
        topleft.setFrameShape(QtGui.QFrame.StyledPanel)
        topright = QtGui.QFrame(self)
        topright.setFrameShape(QtGui.QFrame.StyledPanel)
        bottom = QtGui.QFrame(self)
        bottom.setFrameShape(QtGui.QFrame.StyledPanel)
        splitter1 = QtGui.QSplitter(QtCore.Qt.Horizontal)
        splitter1.addWidget(topleft)
        splitter1.addWidget(topright)
        splitter2 = QtGui.QSplitter(QtCore.Qt.Vertical)
        splitter2.addWidget(splitter1)
        splitter2.addWidget(bottom)
        hbox.addWidget(splitter2)
        self.setLayout(hbox)
        QtGui.QApplication.setStyle(QtGui.QStyleFactory.create('Cleanlooks'))
        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('QtGui.QSplitter')
        self.show()
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

鍦ㄨ繖涓緥瀛愪腑錛屾湁涓変釜妗嗘灦緇勪歡錛屼袱涓垎鍓叉潯銆?/p>

topleft = QtGui.QFrame(self)
topleft.setFrameShape(QtGui.QFrame.StyledPanel)

鎴戜滑浣跨敤浜嗘湁鏍峰紡鐨勬鏋訛紝涓昏鐢ㄤ簬鐪嬪埌杈規銆?/p>

splitter1 = QtGui.QSplitter(QtCore.Qt.Horizontal)
splitter1.addWidget(topleft)
splitter1.addWidget(topright)

鎴戜滑鍒涘緩浜嗕竴涓?QtGui.QSplitter 緇勪歡錛屽茍娣誨姞鍒頒袱涓鏋躲?/p>

splitter2 = QtGui.QSplitter(QtCore.Qt.Vertical)
splitter2.addWidget(splitter1)

鎴戜滑涔熷彲浠ユ妸涓涓?splitter 娣誨姞鍒?splitter 涓?/p>

QtGui.QApplication.setStyle(QtGui.QStyleFactory.create('Cleanlooks'))

鎴戜滑浣跨敤涓涓畝媧佺殑鏍峰紡銆傚湪鏈変簺鏍峰紡涓紝妗嗘灦鏄笉鍙鐨勩?/p>

QtGui.QComboBox

QtGui.QComboBox 鍏佽鐢ㄦ埛浠庝竴緇勯夐」涓夊彇涓涓?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
This example shows
how to use QtGui.QComboBox widget.
author: Jan Bodnar
website: zetcode.com
last edited: September 2011
"""
import sys
from PyQt4 import QtGui, QtCore
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        self.lbl = QtGui.QLabel("Ubuntu", self)
        combo = QtGui.QComboBox(self)
        combo.addItem("Ubuntu")
        combo.addItem("Mandriva")
        combo.addItem("Fedora")
        combo.addItem("Red Hat")
        combo.addItem("Gentoo")
        combo.move(50, 50)
        self.lbl.move(50, 150)
        combo.activated[str].connect(self.onActivated)
        self.setGeometry(300, 300, 300, 200)
        self.setWindowTitle('QtGui.QComboBox')
        self.show()
    def onActivated(self, text):
        self.lbl.setText(text)
        self.lbl.adjustSize()
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

榪欎釜渚嬪瓙涓湁涓涓?QtGui.QComboBox 鍜?QtGui.QLable 銆傝繖閲屾湁浜斾釜閫夐」銆傚畠浠槸 Linux 鐨勫彂琛岀増銆傛爣絳句腑灝變細鏄劇ず閫変腑鐨勯」鐩?/p>

combo = QtGui.QComboBox(self)
combo.addItem("Ubuntu")
combo.addItem("Mandriva")
combo.addItem("Fedora")
combo.addItem("Red Hat")
combo.addItem("Gentoo")

鎴戜滑鍒涘緩涓涓?QtGui.QComboBox 緇勪歡騫跺鍔犱簡浜斾釜閫夐」銆?/p>

combo.activated[str].connect(self.onActivated)

褰撻夋嫨涓涓夐」鍚庯紝鎴戜滑璋冪敤浜?onActivated() 鏂規硶銆?/p>

def onActivated(self, text):
    self.lbl.setText(text)
    self.lbl.adjustSize()

鍦ㄨ繖涓柟娉曚腑錛屾垜浠妸閫変腑鐨勯夐」鐨勬枃鏈斁鍒版爣絳句腑銆傛垜浠繕璋冩暣鏍囩鐨勫ぇ灝忋?/p>


鍦ㄦ湰閮ㄥ垎錛屾垜浠秹鍙婁簡鍙﹀鍥涗釜 PyQt4 緇勪歡銆?/p>



mirguest 2012-02-12 10:13 鍙戣〃璇勮
]]>
[Python][PyQt4]PyQt4 Widgethttp://www.shnenglu.com/mirguest/archive/2012/02/12/165387.htmlmirguestmirguestSun, 12 Feb 2012 02:11:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/02/12/165387.htmlhttp://www.shnenglu.com/mirguest/comments/165387.htmlhttp://www.shnenglu.com/mirguest/archive/2012/02/12/165387.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/165387.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/165387.html闃呰鍏ㄦ枃

mirguest 2012-02-12 10:11 鍙戣〃璇勮
]]>
[Python][PyQt4]PyQt4 涓殑 Dialoghttp://www.shnenglu.com/mirguest/archive/2012/02/12/165386.htmlmirguestmirguestSun, 12 Feb 2012 02:06:00 GMThttp://www.shnenglu.com/mirguest/archive/2012/02/12/165386.htmlhttp://www.shnenglu.com/mirguest/comments/165386.htmlhttp://www.shnenglu.com/mirguest/archive/2012/02/12/165386.html#Feedback0http://www.shnenglu.com/mirguest/comments/commentRss/165386.htmlhttp://www.shnenglu.com/mirguest/services/trackbacks/165386.html

PyQt4 涓殑 Dialog

Dialog 紿楀彛鎴?dialog 鏄幇浠?GUI 搴旂敤蹇呬笉鍙皯鐨勪竴閮ㄥ垎銆備竴涓?dialog 瀹氫箟涓轟袱浜烘垨鏇村浜洪棿鐨勪細璇濄傚湪璁$畻鏈哄簲鐢ㄤ腑錛宒ialog 灝辨槸涓涓拰搴旂敤璇磋瘽鐨勭獥鍙c俤ialog 鍙互鐢ㄤ簬杈撳叆鏁版嵁錛屼慨鏀規暟鎹紝鏇存敼搴旂敤鐨勮緗瓑絳夈傚璇濇鍦ㄧ敤鎴峰拰璁$畻鏈虹殑閫氫俊闂存槸閲嶈鐨勬墜孌點?/p>

QtGui.QInputDialog

QtGui.QInputDialog 鎻愪緵浜嗕竴涓畝鍗曟柟渚跨殑瀵硅瘽妗嗭紝鐢ㄤ簬鑾峰彇鐢ㄦ埛杈撳叆鐨勪竴涓箋傝緭鍏ュ煎彲浠ユ槸瀛楃涓詫紝鏁板瓧錛屾垨鑰呬竴涓垪琛ㄤ腑鐨勪竴欏廣?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this example, we receive data from
a QtGui.QInputDialog dialog.
author: Jan Bodnar
website: zetcode.com
last edited: October 2011
"""
import sys
from PyQt4 import QtGui
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        self.btn = QtGui.QPushButton('Dialog', self)
        self.btn.move(20, 20)
        self.btn.clicked.connect(self.showDialog)
        self.le = QtGui.QLineEdit(self)
        self.le.move(130, 22)
        self.setGeometry(300, 300, 290, 150)
        self.setWindowTitle('Input dialog')
        self.show()
    def showDialog(self):
        text, ok = QtGui.QInputDialog.getText(self, 'Input Dialog',
            'Enter your name:')
        if ok:
            self.le.setText(str(text))
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

榪欎釜渚嬪瓙涓敤鍒頒簡涓涓寜閽拰涓涓緙栬緫緇勪歡銆傛寜閽細鏄劇ず涓涓緭鍏ュ璇濇鐢ㄤ簬寰楀埌鏂囨湰銆傝岃緭鍏ョ殑鏂囨湰灝嗗湪琛岀紪杈戠粍浠朵腑鏄劇ず銆?/p>

text, ok = QtGui.QInputDialog.getText(self, 'Input Dialog',
    'Enter your name:')

榪欎竴琛屾樉紺轟簡杈撳叆瀵硅瘽妗嗐傜涓涓瓧絎︿覆鏄璇濇鐨勬爣棰橈紝絎簩涓瓧絎︿覆鍒欐槸瀵硅瘽妗嗕腑鐨勬秷鎭傚璇濇灝嗚繑鍥炶緭鍏ョ殑鏂囨湰鍜屼竴涓竷灝斿箋傚鏋滅偣鍑諱簡 ok 鎸夐挳錛屽垯甯冨皵鍊間負 true 錛屽惁鍒欎負 false 銆?/p>

if ok:
    self.le.setText(str(text))

浠庡璇濇涓帴鏀跺埌鐨勬枃鏈氨琚緗埌琛岀紪杈戠粍浠朵腑銆?/p>

QtGui.QColorDialog

QtGui.QColorDialog 鐢ㄤ簬閫夊彇棰滆壊鍊箋?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this example, we select a color value
from the QtGui.QColorDialog and change the background
color of a QtGui.QFrame widget.
author: Jan Bodnar
website: zetcode.com
last edited: October 2011
"""
import sys
from PyQt4 import QtGui
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        col = QtGui.QColor(0, 0, 0)
        self.btn = QtGui.QPushButton('Dialog', self)
        self.btn.move(20, 20)
        self.btn.clicked.connect(self.showDialog)
        self.frm = QtGui.QFrame(self)
        self.frm.setStyleSheet("QWidget { background-color: %s }"
            % col.name())
        self.frm.setGeometry(130, 22, 100, 100)
        self.setGeometry(300, 300, 250, 180)
        self.setWindowTitle('Color dialog')
        self.show()
    def showDialog(self):
        col = QtGui.QColorDialog.getColor()
        if col.isValid():
            self.frm.setStyleSheet("QWidget { background-color: %s }"
                % col.name())
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

榪欎釜渚嬪瓙鏄劇ず涓涓寜閽拰涓涓?QtGui.QFrame 銆傝繖涓粍浠剁殑鑳屾櫙琚涓洪粦鑹層備嬌鐢?QtGui.QColorDialog 鍙互鏀瑰彉鍏惰儗鏅?/p>

col = QtGui.QColor(0, 0, 0)

榪欎釜鏄?QtGui.QFrame 鐨勫垵濮嬮鑹層?/p>

col = QtGui.QColorDialog.getColor()

榪欎竴琛屽皢寮瑰嚭 QtGui.QColorDialog 銆?/p>

if col.isValid():
    self.frm.setStyleSheet("QWidget { background-color: %s }"
        % col.name())

鎴戜滑媯鏌ラ鑹叉槸鍚﹀悎娉曘傚鏋滅偣鍑諱簡鍙栨秷鎸夐挳錛岃繑鍥炵殑灝變笉鏄悎娉曞箋傚鏋滈鑹插悎娉曪紝鎴戜滑灝辯敤鏍峰紡琛ㄦ洿鏀硅儗鏅鑹層?/p>

QtGui.QFontDialog

QtGui.QFontDialog 鐢ㄤ簬閫夊彇瀛椾綋銆?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this example, we select a font name
and change the font of a label.
author: Jan Bodnar
website: zetcode.com
last edited: October 2011
"""
import sys
from PyQt4 import QtGui
class Example(QtGui.QWidget):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        vbox = QtGui.QVBoxLayout()
        btn = QtGui.QPushButton('Dialog', self)
        btn.setSizePolicy(QtGui.QSizePolicy.Fixed,
            QtGui.QSizePolicy.Fixed)
        btn.move(20, 20)
        vbox.addWidget(btn)
        btn.clicked.connect(self.showDialog)
        self.lbl = QtGui.QLabel('Knowledge only matters', self)
        self.lbl.move(130, 20)
        vbox.addWidget(self.lbl)
        self.setLayout(vbox)
        self.setGeometry(300, 300, 250, 180)
        self.setWindowTitle('Font dialog')
        self.show()
    def showDialog(self):
        font, ok = QtGui.QFontDialog.getFont()
        if ok:
            self.lbl.setFont(font)
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

鍦ㄦ垜浠殑渚嬪瓙涓紝鎴戜滑鏈変竴涓寜閽拰涓涓爣絳俱傞氳繃 QtGui.QFontDialog 鎴戜滑鍙互鏀瑰彉鏍囩鐨勫瓧浣撱?/p>

font, ok = QtGui.QFontDialog.getFont()

鎴戜滑寮瑰嚭涓涓瓧浣撳璇濇銆?getFont() 鏂規硶灝嗚繑鍥炲瓧浣撶殑鍚嶇О鍜?ok 鍙傛暟銆傚鏋滅敤鎴風偣鍑諱簡 OK 閭d箞灝辨槸 True 錛屽惁鍒欎負 False 銆?/p>

if ok:
    self.label.setFont(font)

濡傛灉鎴戜滑鐐瑰嚮浜?ok錛屾爣絳劇殑瀛椾綋灝卞彲鑳芥敼鍙樸?/p>

QtGui.QFileDialog

QtGui.QFileDialog 鏄厑璁哥敤鎴烽夋嫨鏂囦歡鎴栫洰褰曠殑瀵硅瘽妗嗐傛枃浠跺彲浠ョ敤浜庢墦寮鎴栦繚瀛樸?/p>

#!/usr/bin/python
# -*- coding: utf-8 -*-
"""
ZetCode PyQt4 tutorial
In this example, we select a file with a
QtGui.QFileDialog and display its contents
in a QtGui.QTextEdit.
author: Jan Bodnar
website: zetcode.com
last edited: October 2011
"""
import sys
from PyQt4 import QtGui
class Example(QtGui.QMainWindow):
    def __init__(self):
        super(Example, self).__init__()
        self.initUI()
    def initUI(self):
        self.textEdit = QtGui.QTextEdit()
        self.setCentralWidget(self.textEdit)
        self.statusBar()
        openFile = QtGui.QAction(QtGui.QIcon('open.png'), 'Open', self)
        openFile.setShortcut('Ctrl+O')
        openFile.setStatusTip('Open new File')
        openFile.triggered.connect(self.showDialog)
        menubar = self.menuBar()
        fileMenu = menubar.addMenu('&File')
        fileMenu.addAction(openFile)
        self.setGeometry(300, 300, 350, 300)
        self.setWindowTitle('File dialog')
        self.show()
    def showDialog(self):
        fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file',
                '/home')
        f = open(fname, 'r')
        with f:
            data = f.read()
            self.textEdit.setText(data)
def main():
    app = QtGui.QApplication(sys.argv)
    ex = Example()
    sys.exit(app.exec_())
if __name__ == '__main__':
    main()

榪欎釜渚嬪瓙涓湁鑿滃崟鏍忥紝鏂囨湰緙栬緫鍖轟互鍙婄姸鎬佹爮銆傝彍鍗曚腑鐨勯夐」鏄劇ず QtGui.QFileDialog 鐢ㄤ簬閫夋嫨鏂囦歡銆傝屾枃浠剁殑鍐呭鍒欒澆鍏ュ埌鏂囨湰緙栬緫鍖恒?/p>

class Example(QtGui.QMainWindow):
    def __init__(self):
        super(Example, self).__init__()

榪欎釜渚嬪瓙鏄熀浜?QtGui.QMainWindow 緇勪歡錛屽洜涓烘垜浠鍦ㄤ腑蹇冭緗枃鏈紪杈戝尯銆?/p>

fname = QtGui.QFileDialog.getOpenFileName(self, 'Open file',
    '/home')

鎴戜滑寮瑰嚭 QtGui.QFileDialog 銆傚湪 getOpenFileName() 鏂規硶涓涓涓瓧絎︿覆鏄爣棰樸傜浜屼釜鍒欐槸鎸囧畾瀵硅瘽妗嗙殑宸ヤ綔鐩綍銆傞粯璁ゆ儏鍐典笅錛屾枃浠惰繃婊や負鎵鏈夋枃浠訛紙 * 錛夈?/p>

f = open(fname, 'r')
with f:
    data = f.read()
    self.textEdit.setText(data)

閫夋嫨鐨勬枃浠跺皢琚鍙栵紝騫朵笖鍏舵枃浠跺唴瀹硅緗埌鏂囨湰緙栬緫鍖恒?/p>


榪欎釜閮ㄥ垎錛屾垜浠璁轟簡瀵硅瘽妗嗐?/p>



mirguest 2012-02-12 10:06 鍙戣〃璇勮
]]>
[Python][PyQt4]PyQt4 涓殑浜嬩歡鍜屼俊鍙?/title><link>http://www.shnenglu.com/mirguest/archive/2012/02/05/164984.html</link><dc:creator>mirguest</dc:creator><author>mirguest</author><pubDate>Sun, 05 Feb 2012 02:05:00 GMT</pubDate><guid>http://www.shnenglu.com/mirguest/archive/2012/02/05/164984.html</guid><wfw:comment>http://www.shnenglu.com/mirguest/comments/164984.html</wfw:comment><comments>http://www.shnenglu.com/mirguest/archive/2012/02/05/164984.html#Feedback</comments><slash:comments>0</slash:comments><wfw:commentRss>http://www.shnenglu.com/mirguest/comments/commentRss/164984.html</wfw:commentRss><trackback:ping>http://www.shnenglu.com/mirguest/services/trackbacks/164984.html</trackback:ping><description><![CDATA[ <div id="rtlxbpf" class="document"> <div id="tfpjnbr" class="documentwrapper"> <div id="vxhlvdb" class="bodywrapper"> <div id="nphtfnl" class="body"> <div id="zjlxpxv" class="section" id="pyqt4"> <h1>PyQt4 涓殑浜嬩歡鍜屼俊鍙?a class="headerlink" href="#pyqt4" title="Permalink to this headline">¶</a></h1> <p>鍦ㄦ湰閮ㄥ垎錛屾垜浠皢浼氭帰璁ㄤ簨浠跺拰淇″彿銆?/p> <div id="zbxhjzp" class="section" id="id1"> <h2>浜嬩歡<a class="headerlink" href="#id1" title="Permalink to this headline">¶</a></h2> <p>鍦ㄤ換浣曠殑 GUI 紼嬪簭涓紝浜嬩歡鏄緢閲嶈鐨勯儴鍒嗐備簨浠舵槸鐢辯敤鎴鋒垨鎿嶄綔緋葷粺浜х敓鐨勩傚綋鎴戜滑璋冪敤搴旂敤鐨?<tt class="docutils literal"><span id="fxrvzpf" class="pre">exec_()</span></tt> 鏃訛紝搴旂敤灝辮繘鍏ヤ簡涓誨驚鐜備富寰幆浼氭帴鍙椾簨浠跺茍涓旀妸瀹冧滑鍙戦佺粰瀵硅薄銆俆rolltech 寮曞叆浜嗕竴涓嫭鐗圭殑淇″彿鍜屾Ы鏈哄埗銆?/p> <p>浜嬩歡鏄換浣?GUI 紼嬪簭涓緢閲嶈鐨勯儴鍒嗐傛墍鏈?GUI 搴旂敤閮芥槸浜嬩歡椹卞姩鐨勩備竴涓簲鐢ㄥ鍏剁敓鍛芥湡浜х敓鐨勪笉鍚岀殑浜嬩歡綾誨瀷鍋氬嚭鍙嶅簲銆備簨浠舵槸涓昏鐢卞簲鐢ㄧ殑鐢ㄦ埛浜х敓銆備絾鏄紝涔熷彲浠ラ氳繃鍏朵粬鏂規硶浜х敓錛屾瘮濡傦紝緗戠粶閫氫俊錛岀獥鍙g殑綆$悊鑰咃紝璁℃椂鍣ㄣ傚湪浜嬩歡妯″瀷涓紝鏈変笁涓弬涓庤咃細</p> <ul class="simple"> <li>浜嬩歡婧愶紙event source錛?/li> <li>浜嬩歡瀵硅薄錛坋vent object錛?/li> <li>浜嬩歡鐩爣錛坋vent target錛?/li> </ul> <p><strong>event source</strong> 鏄偅浜涚姸鎬佹敼鍙樼殑瀵硅薄銆傚畠浜х敓浜嬩歡銆傝?<strong>event object</strong> 錛圗vent錛夊皝瑁呬簡浜嬩歡婧愮殑鐘舵佹敼鍙樸傝?<strong>event target</strong> 鍒欐槸闇瑕佽閫氱煡鐨勩備簨浠舵簮鎶婂鐞嗕簨浠剁殑浠誨姟濮旀墭緇欎簡浜嬩歡鐩爣銆?/p> <p>褰撴垜浠皟鐢ㄤ簡搴旂敤鐨?<tt class="docutils literal"><span id="bdhzvlt" class="pre">exec_()</span></tt> 鏂規硶錛屽簲鐢ㄥ氨榪涘叆涓誨驚鐜簡銆備富寰幆鎺ュ彈浜嬩歡鐒跺悗鎶婁粬浠彂閫佺粰瀵硅薄銆備俊鍙峰拰妲界敤浜庡璞¢棿鐨勯氫俊銆傚綋鐗瑰畾鐨勪簨浠跺彂鐢熸椂 <strong>淇″彿</strong> 灝辮鍙戦佷簡銆傝?<strong>妲?/strong> 鍒欐槸浠諱綍 Python 涓彲璋冪敤鐨勩傚綋淇″彿鍙戦佺粰浜嗚繖涓Ы錛屾Ы灝辮璋冪敤浜嗐?/p> </div> <div id="fphlddl" class="section" id="api"> <h2>鏂扮殑 API<a class="headerlink" href="#api" title="Permalink to this headline">¶</a></h2> <p>PyQt 4.5 寮曞叆浜嗘柊鐨?API 鐢ㄤ簬淇″彿鍜屾Ы銆?/p> <div id="vxhbnvj" class="highlight-python"><div id="lfjlpdt" class="highlight"><pre><span id="xbtfzpx" class="n">QtCore</span><span id="dlfzttz" class="o">.</span><span id="vfxbftb" class="n">QObject</span><span id="dfjlvdl" class="o">.</span><span id="lfpbvdl" class="n">connect</span><span id="ddhrlbr" class="p">(</span><span id="zbfztbr" class="n">button</span><span id="rlxzbjz" class="p">,</span> <span id="xxbrdlb" class="n">QtCore</span><span id="lnrtnvd" class="o">.</span><span id="nnzdntj" class="n">SIGNAL</span><span id="zztnpfv" class="p">(</span><span id="frlxpxf" class="s">'clicked()'</span><span id="fptvhff" class="p">),</span> <span id="blhbtbr" class="bp">self</span><span id="frzvphv" class="o">.</span><span id="blvzrhp" class="n">onClicked</span><span id="nzjlfnd" class="p">)</span> </pre></div> </div> <p>榪欐槸鏃у紡鐨?API 銆?/p> <div id="nrdfhnv" class="highlight-python"><div id="jjlphpf" class="highlight"><pre><span id="pbdxrhp" class="n">button</span><span id="rdxzdlb" class="o">.</span><span id="hjlfjzp" class="n">clicked</span><span id="jdnzbbj" class="o">.</span><span id="txzbxlt" class="n">connect</span><span id="zldzthz" class="p">(</span><span id="xzlfjzf" class="bp">self</span><span id="hzbnpnn" class="o">.</span><span id="hzvxzrh" class="n">onClicked</span><span id="nxztnlt" class="p">)</span> </pre></div> </div> <p>鏂板紡鐨勬洿鎺ヨ繎 Python 鐨勬爣鍑嗐?/p> </div> <div id="bfptvbj" class="section" id="id2"> <h2>淇″彿涓庢Ы<a class="headerlink" href="#id2" title="Permalink to this headline">¶</a></h2> <p>榪欐槸涓涓畝鍗曠殑渚嬪瓙錛屾弿榪?PyQt4 涓殑淇″彿鍜屾Ы銆?/p> <div id="lnzbnlt" class="highlight-python"><div id="nfhbnvj" class="highlight"><pre><span id="zrvnjxf" class="c">#!/usr/bin/python</span> <span id="zbdxbhh" class="c"># -*- coding: utf-8 -*-</span> <span id="txptnvj" class="sd">"""</span> <span id="nhzlfnb" class="sd">ZetCode PyQt4 tutorial</span> <span id="vzlvrxn" class="sd">In this example, we connect a signal</span> <span id="tdzbdtt" class="sd">of a QtGui.QSlider to a slot</span> <span id="rbvpzhp" class="sd">of a QtGui.QLCDNumber.</span> <span id="jbnrljz" class="sd">author: Jan Bodnar</span> <span id="zbtxzxf" class="sd">website: zetcode.com</span> <span id="ztlprzz" class="sd">last edited: October 2011</span> <span id="jlfptzh" class="sd">"""</span> <span id="zjdfpxv" class="kn">import</span> <span id="ddhbdvj" class="nn">sys</span> <span id="xztfhpf" class="kn">from</span> <span id="tnxjdlj" class="nn">PyQt4</span> <span id="hbdxtjh" class="kn">import</span> <span id="vnhdnvb" class="n">QtGui</span><span id="pblnbhh" class="p">,</span> <span id="jvnzlth" class="n">QtCore</span> <span id="bnhjvlb" class="k">class</span> <span id="hjlfzhx" class="nc">Example</span><span id="fpztndd" class="p">(</span><span id="rtlhbzb" class="n">QtGui</span><span id="llxlnlt" class="o">.</span><span id="dnztvvj" class="n">QWidget</span><span id="zlnrldr" class="p">):</span> <span id="nxzbxdb" class="k">def</span> <span id="prbxpff" class="nf">__init__</span><span id="fhdvzpx" class="p">(</span><span id="hlfhlzh" class="bp">self</span><span id="pjtnxvt" class="p">):</span> <span id="xjlpjjp" class="nb">super</span><span id="phlnrpx" class="p">(</span><span id="dxjdnft" class="n">Example</span><span id="pzlnjxf" class="p">,</span> <span id="blprntj" class="bp">self</span><span id="bpjdpxn" class="p">)</span><span id="bvhbftj" class="o">.</span><span id="btfhbzh" class="n">__init__</span><span id="xpdnpft" class="p">()</span> <span id="rlxrbrh" class="bp">self</span><span id="ldzrllt" class="o">.</span><span id="jnfhdth" class="n">initUI</span><span id="pzbnrhh" class="p">()</span> <span id="xprtnvt" class="k">def</span> <span id="tdxrllt" class="nf">initUI</span><span id="bvfrttz" class="p">(</span><span id="ztvpbbj" class="bp">self</span><span id="hjlprpn" class="p">):</span> <span id="xjdvpfx" class="n">lcd</span> <span id="dfztxnt" class="o">=</span> <span id="vxpjvbt" class="n">QtGui</span><span id="fztvxnv" class="o">.</span><span id="tvfzntj" class="n">QLCDNumber</span><span id="zbvzdjh" class="p">(</span><span id="pptnfnn" class="bp">self</span><span id="hzlnznl" class="p">)</span> <span id="xzlfznd" class="n">sld</span> <span id="jvfbvlb" class="o">=</span> <span id="jjdfbpf" class="n">QtGui</span><span id="pzlvpfn" class="o">.</span><span id="nhbnhzh" class="n">QSlider</span><span id="prdnpxn" class="p">(</span><span id="xhtlxnn" class="n">QtCore</span><span id="rjdfbph" class="o">.</span><span id="vxjdffn" class="n">Qt</span><span id="lnxzltj" class="o">.</span><span id="xztvpxv" class="n">Horizontal</span><span id="zbfpbzh" class="p">,</span> <span id="lnrjvnd" class="bp">self</span><span id="bbxzdbr" class="p">)</span> <span id="jdhbttj" class="n">vbox</span> <span id="zlxhtbz" class="o">=</span> <span id="vffztlb" class="n">QtGui</span><span id="lnhrlbj" class="o">.</span><span id="rvfzlbz" class="n">QVBoxLayout</span><span id="dfhtxdl" class="p">()</span> <span id="ztfhjhx" class="n">vbox</span><span id="prldxnv" class="o">.</span><span id="jtfzjbp" class="n">addWidget</span><span id="vfzlndl" class="p">(</span><span id="vxrvpvt" class="n">lcd</span><span id="ztnpbhx" class="p">)</span> <span id="fzjfppx" class="n">vbox</span><span id="bvxbnlb" class="o">.</span><span id="rdfbdjj" class="n">addWidget</span><span id="pztpjhf" class="p">(</span><span id="jnxzvlj" class="n">sld</span><span id="pbtxbzx" class="p">)</span> <span id="jtnrvlr" class="bp">self</span><span id="rjfzthx" class="o">.</span><span id="vpbxnbb" class="n">setLayout</span><span id="bdptfll" class="p">(</span><span id="pjlxzpx" class="n">vbox</span><span id="vpjdvlb" class="p">)</span> <span id="xhdphpv" class="n">sld</span><span id="rjbfrxx" class="o">.</span><span id="lnhbnnv" class="n">valueChanged</span><span id="bnhjdtb" class="o">.</span><span id="nfbtpnv" class="n">connect</span><span id="rzbxhnn" class="p">(</span><span id="lfplvlb" class="n">lcd</span><span id="rdxjbjh" class="o">.</span><span id="dnzjddj" class="n">display</span><span id="lnrdxdb" class="p">)</span> <span id="rdvpbrh" class="bp">self</span><span id="nxtvxnn" class="o">.</span><span id="jlvrjrz" class="n">setGeometry</span><span id="hztnznf" class="p">(</span><span id="hbdztrz" class="mi">300</span><span id="zzvfzhn" class="p">,</span> <span id="tvrdxvl" class="mi">300</span><span id="hblxjjz" class="p">,</span> <span id="zlvhbhf" class="mi">250</span><span id="rbvhtjz" class="p">,</span> <span id="zjlfzhp" class="mi">150</span><span id="nrbxhxp" class="p">)</span> <span id="hzbvpxl" class="bp">self</span><span id="fxtnxhf" class="o">.</span><span id="nfjtxvd" class="n">setWindowTitle</span><span id="lnhlntl" class="p">(</span><span id="jlxztbr" class="s">'Signal & slot'</span><span id="fpztpfv" class="p">)</span> <span id="fhlnppv" class="bp">self</span><span id="nfztdbt" class="o">.</span><span id="blphbtj" class="n">show</span><span id="lvrlvtt" class="p">()</span> <span id="xhbdflj" class="k">def</span> <span id="tlfhtrz" class="nf">main</span><span id="tdprtjz" class="p">():</span> <span id="hhjvppf" class="n">app</span> <span id="rlnprpf" class="o">=</span> <span id="jjfzbjh" class="n">QtGui</span><span id="vvpnhpv" class="o">.</span><span id="ldxtndb" class="n">QApplication</span><span id="fpztdtt" class="p">(</span><span id="rtvprhp" class="n">sys</span><span id="btdzjjp" class="o">.</span><span id="jbvnzzx" class="n">argv</span><span id="dlfzvjj" class="p">)</span> <span id="zrdfzzx" class="n">ex</span> <span id="zjvxhpn" class="o">=</span> <span id="dvzlfvt" class="n">Example</span><span id="hptdhxd" class="p">()</span> <span id="rjlxrhx" class="n">sys</span><span id="lxrlntl" class="o">.</span><span id="dvhbntr" class="n">exit</span><span id="ttfjdlj" class="p">(</span><span id="hztdfnn" class="n">app</span><span id="rztprpn" class="o">.</span><span id="ltxrtzz" class="n">exec_</span><span id="nxjbnvv" class="p">())</span> <span id="vnrlfft" class="k">if</span> <span id="vdfzvlt" class="n">__name__</span> <span id="zrvnzxn" class="o">==</span> <span id="tdpjlrz" class="s">'__main__'</span><span id="hzdxpfn" class="p">:</span> <span id="pzrvtbj" class="n">main</span><span id="xpjdfld" class="p">()</span> </pre></div> </div> <p>鍦ㄦ垜浠殑渚嬪瓙涓紝鎴戜滑鏄劇ず浜?<tt class="docutils literal"><span id="nxhtrtp" class="pre">QtGui.QLCDNumber</span></tt> 鍜?<tt class="docutils literal"><span id="zlxrllj" class="pre">QtGui.QSlider</span></tt> 銆傞氳繃鎷栨嫿婊戝潡錛屾垜浠氨鍙互鏇存敼 lcd 鐨勬暟瀛椼?/p> <div id="zrlvhxd" class="highlight-python"><div id="zxzlfvb" class="highlight"><pre><span id="xzbvnft" class="n">sld</span><span id="rdvrlzr" class="o">.</span><span id="ttfztjz" class="n">valueChanged</span><span id="xptfxfd" class="o">.</span><span id="pfjvxnb" class="n">connect</span><span id="hhbnzxn" class="p">(</span><span id="zhdvjzp" class="n">lcd</span><span id="dxrjndt" class="o">.</span><span id="pldpjrh" class="n">display</span><span id="tbvfjzp" class="p">)</span> </pre></div> </div> <p>姝ゅ錛屾垜浠妸 slider 鐨勪俊鍙?<tt class="docutils literal"><span id="pfzlnld" class="pre">valueChanged</span></tt> 鍜?lcd 鐨勬Ы <tt class="docutils literal"><span id="dvphdjz" class="pre">display</span></tt> 榪炴帴浜嗚搗鏉ャ?/p> <p><strong>sender</strong> 鏄彂閫佷俊鍙風殑瀵硅薄銆?<strong>receiver</strong> 鏄帴鍙椾俊鍙風殑瀵硅薄銆傝?<strong>slot</strong> 鏄洖棣堜俊鍙風殑鏂規硶銆?/p> </div> <div id="fnpjjlf" class="section" id="id3"> <h2>閲嶆柊瀹炵幇浜嬩歡澶勭悊鍙ユ焺<a class="headerlink" href="#id3" title="Permalink to this headline">¶</a></h2> <p>鍦?PyQt4 涓簨浠剁殑澶勭悊涓鑸氳繃閲嶆柊瀹炵幇浜嬩歡鐨勫彞鏌勩?/p> <div id="tjlpbhn" class="highlight-python"><div id="rhtdnrv" class="highlight"><pre><span id="tbfhrzp" class="c">#!/usr/bin/python</span> <span id="vdhbvtt" class="c"># -*- coding: utf-8 -*-</span> <span id="jjtnjzp" class="sd">"""</span> <span id="ddfrbrz" class="sd">ZetCode PyQt4 tutorial</span> <span id="rhtxzxf" class="sd">In this example, we reimplement an</span> <span id="zjdxrxd" class="sd">event handler.</span> <span id="pprdpvd" class="sd">author: Jan Bodnar</span> <span id="trvxthp" class="sd">website: zetcode.com</span> <span id="pfrtnnd" class="sd">last edited: October 2011</span> <span id="zbtvpxx" class="sd">"""</span> <span id="fnrbfld" class="kn">import</span> <span id="tvphdbb" class="nn">sys</span> <span id="brfxrzf" class="kn">from</span> <span id="lvpzljh" class="nn">PyQt4</span> <span id="ddxfplv" class="kn">import</span> <span id="hhrnpfd" class="n">QtGui</span><span id="pvxtltt" class="p">,</span> <span id="hhbdppv" class="n">QtCore</span> <span id="bjfpjjz" class="k">class</span> <span id="phjtpfl" class="nc">Example</span><span id="pphtfll" class="p">(</span><span id="vdxrbtb" class="n">QtGui</span><span id="rfjdffz" class="o">.</span><span id="zrldhnp" class="n">QWidget</span><span id="xvxbtjj" class="p">):</span> <span id="jhjfhnf" class="k">def</span> <span id="xvxhljh" class="nf">__init__</span><span id="vvxhdrh" class="p">(</span><span id="bzlnzhp" class="bp">self</span><span id="brdnrph" class="p">):</span> <span id="jzdfrhn" class="nb">super</span><span id="vxfbvpx" class="p">(</span><span id="hrtprxn" class="n">Example</span><span id="jrlnxvn" class="p">,</span> <span id="pfrlvdt" class="bp">self</span><span id="xvztntr" class="p">)</span><span id="ltdhrhp" class="o">.</span><span id="lrdzjnl" class="n">__init__</span><span id="lbfhlbt" class="p">()</span> <span id="jplnxnv" class="bp">self</span><span id="hfjdxdd" class="o">.</span><span id="xnrtdlt" class="n">initUI</span><span id="hhjnpfz" class="p">()</span> <span id="ttvzlrz" class="k">def</span> <span id="nnfrdrj" class="nf">initUI</span><span id="fxrlxnf" class="p">(</span><span id="tjlhrhx" class="bp">self</span><span id="dvnztbz" class="p">):</span> <span id="jbdfrxp" class="bp">self</span><span id="rrhfnhd" class="o">.</span><span id="jxxtjxj" class="n">setGeometry</span><span id="hxztpvl" class="p">(</span><span id="vtfrdlt" class="mi">300</span><span id="hzlnzhx" class="p">,</span> <span id="ttxztbj" class="mi">300</span><span id="rhtvnnl" class="p">,</span> <span id="xpjdvlb" class="mi">250</span><span id="rzrnxdl" class="p">,</span> <span id="ffhbllj" class="mi">150</span><span id="zxjtxll" class="p">)</span> <span id="fxpldbj" class="bp">self</span><span id="dbfpbzz" class="o">.</span><span id="tldpzrz" class="n">setWindowTitle</span><span id="jrvnpxd" class="p">(</span><span id="xfhdvdt" class="s">'Event handler'</span><span id="ndhbdlb" class="p">)</span> <span id="phzdnvb" class="bp">self</span><span id="xxhbnvt" class="o">.</span><span id="vlhbdbt" class="n">show</span><span id="nfrldlt" class="p">()</span> <span id="vvhjnvj" class="k">def</span> <span id="zhlnpxx" class="nf">keyPressEvent</span><span id="pprlfdb" class="p">(</span><span id="jbvnrff" class="bp">self</span><span id="xpzdfnl" class="p">,</span> <span id="jrlnzxn" class="n">e</span><span id="dtxhdlt" class="p">):</span> <span id="ddhjntb" class="k">if</span> <span id="vvptvbr" class="n">e</span><span id="dtnxrhh" class="o">.</span><span id="nfhjfdt" class="n">key</span><span id="jztnhpf" class="p">()</span> <span id="xxjbpfd" class="o">==</span> <span id="dlxhdrz" class="n">QtCore</span><span id="dbnpjzp" class="o">.</span><span id="bdfhbjh" class="n">Qt</span><span id="jtnhbrf" class="o">.</span><span id="zprlxnt" class="n">Key_Escape</span><span id="ndztvlt" class="p">:</span> <span id="dtnrbzh" class="bp">self</span><span id="btnrbrj" class="o">.</span><span id="llvhljr" class="n">close</span><span id="pfjtndt" class="p">()</span> <span id="vdztdtz" class="k">def</span> <span id="xfjtntt" class="nf">main</span><span id="hptnxxv" class="p">():</span> <span id="ttxptrp" class="n">app</span> <span id="jhtdfnn" class="o">=</span> <span id="ttfpjpf" class="n">QtGui</span><span id="jzjdpxd" class="o">.</span><span id="fzbvpfd" class="n">QApplication</span><span id="ndnjtbz" class="p">(</span><span id="bztfhhh" class="n">sys</span><span id="hnztnlt" class="o">.</span><span id="dlpjbrh" class="n">argv</span><span id="bjlnrfx" class="p">)</span> <span id="vtnxjrx" class="n">ex</span> <span id="bzlxzhx" class="o">=</span> <span id="lrtnzxv" class="n">Example</span><span id="zxblfnl" class="p">()</span> <span id="xxzlxnb" class="n">sys</span><span id="jlhzvtb" class="o">.</span><span id="rzbnxxn" class="n">exit</span><span id="ndfjdjj" class="p">(</span><span id="lnztltb" class="n">app</span><span id="fvprllj" class="o">.</span><span id="zbvrdtz" class="n">exec_</span><span id="vvxrvlb" class="p">())</span> <span id="tnzrllj" class="k">if</span> <span id="bjlpzpf" class="n">__name__</span> <span id="pftnzfn" class="o">==</span> <span id="tbfrbjz" class="s">'__main__'</span><span id="xxhbxnt" class="p">:</span> <span id="pnjdbhp" class="n">main</span><span id="nnzrttz" class="p">()</span> </pre></div> </div> <p>鍦ㄦ垜浠殑渚嬪瓙涓紝鎴戜滑閲嶆柊瀹炵幇浜?<tt class="docutils literal"><span id="rpfzdtb" class="pre">keyPressEvent()</span></tt> 銆?/p> <div id="jbjpvjd" class="highlight-python"><div id="frvfxvv" class="highlight"><pre><span id="hhzlpfv" class="k">def</span> <span id="hnxtntj" class="nf">keyPressEvent</span><span id="xxjlxft" class="p">(</span><span id="lrlfbhz" class="bp">self</span><span id="hnzlntb" class="p">,</span> <span id="lbxhlrh" class="n">e</span><span id="zhjdfll" class="p">):</span> <span id="brvnpnv" class="k">if</span> <span id="hnzbnvt" class="n">e</span><span id="bhtnpxn" class="o">.</span><span id="phjfxfv" class="n">key</span><span id="llnhzhn" class="p">()</span> <span id="zhblfxv" class="o">==</span> <span id="zxtlxxt" class="n">QtCore</span><span id="xnxjvbr" class="o">.</span><span id="djdnjpp" class="n">Qt</span><span id="dtxjbjr" class="o">.</span><span id="hnzlnll" class="n">Key_Escape</span><span id="zrlfxxv" class="p">:</span> <span id="bpjdxlj" class="bp">self</span><span id="tlvpbjh" class="o">.</span><span id="hxbdhfv" class="n">close</span><span id="jrbdznn" class="p">()</span> </pre></div> </div> <p>濡傛灉鎴戜滑鎸?escape 閿紝閭d箞搴旂敤灝卞皢緇堟銆?/p> </div> <div id="xfhtltj" class="section" id="id4"> <h2>浜嬩歡鍙戦佽?a class="headerlink" href="#id4" title="Permalink to this headline">¶</a></h2> <p>鏈変簺鏃跺欙紝鐭ラ亾淇″彿鐨勫彂閫佽呮槸寰堟柟渚跨殑銆傚洜姝わ紝PyQt4 鏈変釜 <tt class="docutils literal"><span id="lddzlrp" class="pre">sender()</span></tt> 鏂規硶銆?/p> <div id="vdnpbrx" class="highlight-python"><div id="ntxbbrj" class="highlight"><pre><span id="zhzdxfd" class="c">#!/usr/bin/python</span> <span id="lrlnhhf" class="c"># -*- coding: utf-8 -*-</span> <span id="jdnrbhz" class="sd">"""</span> <span id="nnpjvbb" class="sd">ZetCode PyQt4 tutorial</span> <span id="vlvprzp" class="sd">In this example, we determine the event sender</span> <span id="hnrjvtr" class="sd">object.</span> <span id="vdnrjrr" class="sd">author: Jan Bodnar</span> <span id="drdfbhx" class="sd">website: zetcode.com</span> <span id="lbvhjpp" class="sd">last edited: October 2011</span> <span id="zzlvxnt" class="sd">"""</span> <span id="ndfrttz" class="kn">import</span> <span id="hbnbhnn" class="nn">sys</span> <span id="jjtxzpv" class="kn">from</span> <span id="xrlxppn" class="nn">PyQt4</span> <span id="fvrldbr" class="kn">import</span> <span id="jxblffd" class="n">QtGui</span><span id="dxrbndt" class="p">,</span> <span id="lfhbljj" class="n">QtCore</span> <span id="tvfpbrr" class="k">class</span> <span id="zzjdxvt" class="nc">Example</span><span id="lvhznbz" class="p">(</span><span id="tzvvhxv" class="n">QtGui</span><span id="xfrrnbj" class="o">.</span><span id="nvfztfn" class="n">QMainWindow</span><span id="ttdxbzx" class="p">):</span> <span id="llfhjrx" class="k">def</span> <span id="ffrjvvj" class="nf">__init__</span><span id="pxhjnlb" class="p">(</span><span id="phjtfnv" class="bp">self</span><span id="zzjfxfn" class="p">):</span> <span id="hhzbfvn" class="nb">super</span><span id="tlfrbjr" class="p">(</span><span id="hzdxrxf" class="n">Example</span><span id="dxhdplt" class="p">,</span> <span id="bvfzltr" class="bp">self</span><span id="pfplfbz" class="p">)</span><span id="pxrlpxd" class="o">.</span><span id="hjvnpff" class="n">__init__</span><span id="fdpzntr" class="p">()</span> <span id="fvzldlj" class="bp">self</span><span id="lbvhltj" class="o">.</span><span id="fpblxxx" class="n">initUI</span><span id="ldnxthh" class="p">()</span> <span id="dxhjftj" class="k">def</span> <span id="fxhlfdd" class="nf">initUI</span><span id="jhjdpfv" class="p">(</span><span id="ttfzrzp" class="bp">self</span><span id="xnhdfvt" class="p">):</span> <span id="zzvhjxf" class="n">btn1</span> <span id="xxzlnnt" class="o">=</span> <span id="fvnhtth" class="n">QtGui</span><span id="hpzvpvb" class="o">.</span><span id="zztnpfp" class="n">QPushButton</span><span id="zrdxzpn" class="p">(</span><span id="vfpjlpn" class="s">"Button 1"</span><span id="nfztxdj" class="p">,</span> <span id="hxrbnbj" class="bp">self</span><span id="vprdfnl" class="p">)</span> <span id="ltnrdbz" class="n">btn1</span><span id="hvhjdjr" class="o">.</span><span id="bbdpvlt" class="n">move</span><span id="fpzlvdb" class="p">(</span><span id="ltpjttr" class="mi">30</span><span id="ppjdxvf" class="p">,</span> <span id="btpzjjp" class="mi">50</span><span id="ljtfpxr" class="p">)</span> <span id="ffxtdtb" class="n">btn2</span> <span id="rzlvhfl" class="o">=</span> <span id="jjtfhfv" class="n">QtGui</span><span id="xrbvzff" class="o">.</span><span id="dfrbfvl" class="n">QPushButton</span><span id="lnxrljb" class="p">(</span><span id="hhjdphx" class="s">"Button 2"</span><span id="hjbvhnf" class="p">,</span> <span id="fhjtpnv" class="bp">self</span><span id="bdfrljz" class="p">)</span> <span id="tdphjzp" class="n">btn2</span><span id="btnztjx" class="o">.</span><span id="rnxhdbb" class="n">move</span><span id="fvzjvdb" class="p">(</span><span id="dvpjtbp" class="mi">150</span><span id="trjdpft" class="p">,</span> <span id="tzdxjpv" class="mi">50</span><span id="fdxjtbj" class="p">)</span> <span id="fprdffv" class="n">btn1</span><span id="phbvhvd" class="o">.</span><span id="btlfjxf" class="n">clicked</span><span id="jztfhxd" class="o">.</span><span id="rlfpbzr" class="n">connect</span><span id="jvpzdlr" class="p">(</span><span id="ldfpzzx" class="bp">self</span><span id="phjdnnd" class="o">.</span><span id="blnfrhx" class="n">buttonClicked</span><span id="dfhbdlj" class="p">)</span> <span id="rlnxjjr" class="n">btn2</span><span id="hxrnxnt" class="o">.</span><span id="nbvrjzh" class="n">clicked</span><span id="lldxzxf" class="o">.</span><span id="bztxzvz" class="n">connect</span><span id="pdxxphx" class="p">(</span><span id="xfztnfv" class="bp">self</span><span id="rhzlvdj" class="o">.</span><span id="bhlnxxl" class="n">buttonClicked</span><span id="rpzbddb" class="p">)</span> <span id="rztxzfh" class="bp">self</span><span id="jlfpbzp" class="o">.</span><span id="fpztpvt" class="n">statusBar</span><span id="dfxrldb" class="p">()</span> <span id="vvpjdtr" class="bp">self</span><span id="lnztxdb" class="o">.</span><span id="nvxzvbt" class="n">setGeometry</span><span id="rrdvhpn" class="p">(</span><span id="xzblxvl" class="mi">300</span><span id="xrldpfd" class="p">,</span> <span id="fzrvpvv" class="mi">300</span><span id="djlnhpv" class="p">,</span> <span id="hxtrbbz" class="mi">290</span><span id="nlxrtrr" class="p">,</span> <span id="bpjxhxv" class="mi">150</span><span id="vfzlfvl" class="p">)</span> <span id="lnxjlnv" class="bp">self</span><span id="btfhtzz" class="o">.</span><span id="vfzrlbt" class="n">setWindowTitle</span><span id="pvfrljb" class="p">(</span><span id="fzdvxpd" class="s">'Event sender'</span><span id="ldxjlbz" class="p">)</span> <span id="hhtlxvv" class="bp">self</span><span id="dlfrvbv" class="o">.</span><span id="ndfpbjp" class="n">show</span><span id="jdfjbzz" class="p">()</span> <span id="ddxztzz" class="k">def</span> <span id="fdxjdjz" class="nf">buttonClicked</span><span id="trbnjzn" class="p">(</span><span id="nlfzjrh" class="bp">self</span><span id="phblnlb" class="p">):</span> <span id="ztnfjfn" class="n">sender</span> <span id="pjbvhpn" class="o">=</span> <span id="ptfzdjp" class="bp">self</span><span id="dnztpxt" class="o">.</span><span id="pjvhjpp" class="n">sender</span><span id="pbtpjpt" class="p">()</span> <span id="lnprdlt" class="bp">self</span><span id="tbfplzp" class="o">.</span><span id="zjdxrxn" class="n">statusBar</span><span id="vxrvxnv" class="p">()</span><span id="xvhjtlt" class="o">.</span><span id="ddfrjhx" class="n">showMessage</span><span id="tjvhbhh" class="p">(</span><span id="ppzlxvj" class="n">sender</span><span id="vtnxjhh" class="o">.</span><span id="ddnprzp" class="n">text</span><span id="brtnjff" class="p">()</span> <span id="thtfppx" class="o">+</span> <span id="xfztndt" class="s">' was pressed'</span><span id="nlprjzz" class="p">)</span> <span id="zptdpvv" class="k">def</span> <span id="lbdhjbx" class="nf">main</span><span id="rptvpvt" class="p">():</span> <span id="ffprnlx" class="n">app</span> <span id="zhrvpvn" class="o">=</span> <span id="ffprltt" class="n">QtGui</span><span id="xvxzljj" class="o">.</span><span id="thrvznf" class="n">QApplication</span><span id="pvzbntl" class="p">(</span><span id="hprbfvb" class="n">sys</span><span id="fbvvxvl" class="o">.</span><span id="ftxrljh" class="n">argv</span><span id="dntvppv" class="p">)</span> <span id="vnxrdlj" class="n">ex</span> <span id="ljfhzhb" class="o">=</span> <span id="tjvxjjx" class="n">Example</span><span id="vlfjllb" class="p">()</span> <span id="pnhjvbt" class="n">sys</span><span id="znrbnlr" class="o">.</span><span id="ftfhbjz" class="n">exit</span><span id="trvxpxd" class="p">(</span><span id="rrbfzfx" class="n">app</span><span id="nvfblbj" class="o">.</span><span id="znzbnvt" class="n">exec_</span><span id="vjvplrp" class="p">())</span> <span id="rxjdvdb" class="k">if</span> <span id="hpptfdt" class="n">__name__</span> <span id="rpzbnnd" class="o">==</span> <span id="vlfrvlr" class="s">'__main__'</span><span id="pfrdnnl" class="p">:</span> <span id="tbvfhff" class="n">main</span><span id="xxhjndt" class="p">()</span> </pre></div> </div> <p>榪欎釜渚嬪瓙涓湁涓や釜鎸夐挳銆傚湪 <tt class="docutils literal"><span id="zphtnvd" class="pre">buttonClicked()</span></tt> 鏂規硶涓紝鎴戜滑閫氳繃璋冪敤 <tt class="docutils literal"><span id="fvrrldj" class="pre">sender()</span></tt> 鏂規硶鐭ラ亾浜嗗摢涓寜閽鐐瑰嚮浜嗐?/p> <div id="pprvpvv" class="highlight-python"><div id="rpjvnnt" class="highlight"><pre><span id="nbfxrzh" class="n">btn1</span><span id="lnzbljj" class="o">.</span><span id="lrvxbhp" class="n">clicked</span><span id="nblpbpp" class="o">.</span><span id="nnhrljh" class="n">connect</span><span id="flxrltb" class="p">(</span><span id="hfhrvjb" class="bp">self</span><span id="zztvhfd" class="o">.</span><span id="nvhbvbj" class="n">buttonClicked</span><span id="rpjvhvn" class="p">)</span> <span id="tbnxrrp" class="n">btn2</span><span id="dbdxrhn" class="o">.</span><span id="dtdxrhp" class="n">clicked</span><span id="rhlxjxv" class="o">.</span><span id="lrlfzhn" class="n">connect</span><span id="zphlvdb" class="p">(</span><span id="ltvzrrf" class="bp">self</span><span id="lbdfhzp" class="o">.</span><span id="fxhtdvj" class="n">buttonClicked</span><span id="zpbtfll" class="p">)</span> </pre></div> </div> <p>涓や釜鎸夐挳閮借繛鎺ュ埌鐩稿悓鐨勬Ы涓?/p> <div id="xxztnlb" class="highlight-python"><div id="rnzdnnv" class="highlight"><pre><span id="vtpzdth" class="k">def</span> <span id="dtxrtzh" class="nf">buttonClicked</span><span id="zhtnpfd" class="p">(</span><span id="flxxbzx" class="bp">self</span><span id="jpjlxvv" class="p">):</span> <span id="bhrfrzp" class="n">sender</span> <span id="btlxzpf" class="o">=</span> <span id="ljldzrj" class="bp">self</span><span id="rrrvpfd" class="o">.</span><span id="ltvfrhp" class="n">sender</span><span id="btvpjpn" class="p">()</span> <span id="pnfrtth" class="bp">self</span><span id="tzlfhpv" class="o">.</span><span id="trldpxd" class="n">statusBar</span><span id="bzjvpfv" class="p">()</span><span id="fnhrdjj" class="o">.</span><span id="vtnfrzx" class="n">showMessange</span><span id="xlxjvjb" class="p">(</span><span id="jrtxhhf" class="n">sender</span><span id="hzjvhvl" class="o">.</span><span id="bzlnzpl" class="n">text</span><span id="dbnfrxx" class="p">()</span> <span id="ltvprzp" class="o">+</span> <span id="nbfprhf" class="s">" was pressed"</span><span id="dbdfjzf" class="p">)</span> </pre></div> </div> <p>鎴戜滑閫氳繃璋冪敤 <tt class="docutils literal"><span id="ddvhjjh" class="pre">sender()</span></tt> 鏂規硶鐭ラ亾浜嗘秷鎭簮銆傚湪鐘舵佹爮涓紝鎴戜滑鏄劇ず浜嗚鎸夌殑鎸夐挳鐨勬爣絳俱?/p> </div> <div id="brldrpx" class="section" id="id5"> <h2>鍙戦佷俊鍙?a class="headerlink" href="#id5" title="Permalink to this headline">¶</a></h2> <p>鐢?<tt class="docutils literal"><span id="bbvvzff" class="pre">QtCore.QObject</span></tt> 鍒涘緩鐨勫璞″彲浠ュ彂閫佷俊鍙楓傚鏋滄垜浠偣鍑繪寜閽紝涓涓?<tt class="docutils literal"><span id="ndxjdjh" class="pre">clicked()</span></tt> 淇″彿灝辮鐢熸垚銆傚湪涓嬮潰鐨勪緥瀛愪腑鎴戜滑灝嗙湅鍒板浣曞彂閫佷俊鍙楓?/p> <div id="zxjjvld" class="highlight-python"><div id="tpbnzfd" class="highlight"><pre><span id="vtnptbp" class="c">#!/usr/bin/python</span> <span id="vvpjljz" class="c"># -*- coding: utf-8 -*-</span> <span id="nvpztff" class="sd">"""</span> <span id="dtnxjrf" class="sd">ZetCode PyQt4 tutorial</span> <span id="hnhlnvb" class="sd">In this example, we show how to emit a</span> <span id="fvhjvtr" class="sd">custom signal.</span> <span id="ljvhjxp" class="sd">author: Jan Bodnar</span> <span id="flnzbzx" class="sd">website: zetcode.com</span> <span id="fxzlvtr" class="sd">last edited: October 2011</span> <span id="vlxzdlr" class="sd">"""</span> <span id="fvxjlvt" class="kn">import</span> <span id="dzlfphf" class="nn">sys</span> <span id="flvhrzx" class="kn">from</span> <span id="fbxzjrz" class="nn">PyQt4</span> <span id="ffzjdtr" class="kn">import</span> <span id="jhtvfdt" class="n">QtGui</span><span id="nbfxjhh" class="p">,</span> <span id="bhtprpx" class="n">QtCore</span> <span id="rhbbnvb" class="k">class</span> <span id="jhjxzxf" class="nc">Communicate</span><span id="jhjvfnv" class="p">(</span><span id="trtxrfd" class="n">QtCore</span><span id="xnpldtj" class="o">.</span><span id="pdzrdjz" class="n">QObject</span><span id="tptdxpd" class="p">):</span> <span id="bjjnfvl" class="n">closeApp</span> <span id="zxjlflt" class="o">=</span> <span id="thtdzpd" class="n">QtCore</span><span id="tbtxrhv" class="o">.</span><span id="ltprbbp" class="n">pyqtSignal</span><span id="fnzrvbj" class="p">()</span> <span id="thlnzhn" class="k">class</span> <span id="hfbvpnt" class="nc">Example</span><span id="pnhbtbr" class="p">(</span><span id="jhlvhnl" class="n">QtGui</span><span id="jjdxzpv" class="o">.</span><span id="ltlpbrx" class="n">QMainWindow</span><span id="zxjtflb" class="p">):</span> <span id="jbtvhpf" class="k">def</span> <span id="ndnztrh" class="nf">__init__</span><span id="nfxtvbr" class="p">(</span><span id="rztdppf" class="bp">self</span><span id="rzblxnv" class="p">):</span> <span id="hpjtvdj" class="nb">super</span><span id="bhtvfft" class="p">(</span><span id="ddnzjrp" class="n">Example</span><span id="bptdxdt" class="p">,</span> <span id="bjvzbdl" class="bp">self</span><span id="fnprtzr" class="p">)</span><span id="rrjvhxd" class="o">.</span><span id="ltnpbhz" class="n">__init__</span><span id="fvpjvtr" class="p">()</span> <span id="pxzztjz" class="bp">self</span><span id="vbvxbbx" class="o">.</span><span id="rzbfrxn" class="n">initUI</span><span id="flvhjzz" class="p">()</span> <span id="vbdptzp" class="k">def</span> <span id="vdztvlz" class="nf">initUI</span><span id="zzbnrxv" class="p">(</span><span id="xvhbljz" class="bp">self</span><span id="thjvhvl" class="p">):</span> <span id="pfxbvbr" class="bp">self</span><span id="bzlfpfd" class="o">.</span><span id="pvhblbb" class="n">c</span> <span id="nbnzbhz" class="o">=</span> <span id="jpjnrfx" class="n">Communicate</span><span id="brbfxvl" class="p">()</span> <span id="bpbtxld" class="bp">self</span><span id="xlfzlxx" class="o">.</span><span id="fnppljp" class="n">c</span><span id="zfztpvt" class="o">.</span><span id="bhjvfvb" class="n">closeApp</span><span id="zhtfzfd" class="o">.</span><span id="ltxbftt" class="n">connect</span><span id="xfzbndt" class="p">(</span><span id="xxpbntz" class="bp">self</span><span id="hfzlzff" class="o">.</span><span id="fdvhtjh" class="n">close</span><span id="tbdfjhx" class="p">)</span> <span id="bhrvxnl" class="bp">self</span><span id="phjvxxl" class="o">.</span><span id="rfzbnvt" class="n">setGeometry</span><span id="rzlnpxv" class="p">(</span><span id="rhbdxlt" class="mi">300</span><span id="tjvhjpx" class="p">,</span> <span id="jjbfzxv" class="mi">300</span><span id="bpjdpnl" class="p">,</span> <span id="vtfrlbz" class="mi">290</span><span id="bjlzrzp" class="p">,</span> <span id="fffrltj" class="mi">150</span><span id="hprtvlj" class="p">)</span> <span id="brlxrhx" class="bp">self</span><span id="pvhrdjr" class="o">.</span><span id="jxblntb" class="n">setWindowTitle</span><span id="rpjnxxv" class="p">(</span><span id="vbnpbbb" class="s">'Emit signal'</span><span id="xfplndd" class="p">)</span> <span id="dblphhv" class="bp">self</span><span id="fnztllt" class="o">.</span><span id="vbvpjhz" class="n">show</span><span id="tlfzjzf" class="p">()</span> <span id="zrjnxvl" class="k">def</span> <span id="zxjdntt" class="nf">mousePressEvent</span><span id="pnpztbj" class="p">(</span><span id="zfrbvdd" class="bp">self</span><span id="ljtfrxv" class="p">,</span> <span id="zprbnlt" class="n">event</span><span id="hhbdnfd" class="p">):</span> <span id="jjldxxf" class="bp">self</span><span id="lbvhbpp" class="o">.</span><span id="ntnhrzx" class="n">c</span><span id="tlfpdzp" class="o">.</span><span id="dbfztzh" class="n">closeApp</span><span id="trdnzpn" class="o">.</span><span id="rrbnzpn" class="n">emit</span><span id="rrtxrxd" class="p">()</span> <span id="djdfbzz" class="k">def</span> <span id="nlxpbrx" class="nf">main</span><span id="nbnhbrp" class="p">():</span> <span id="ndpzjbh" class="n">app</span> <span id="hxrjfdt" class="o">=</span> <span id="jxrptzz" class="n">QtGui</span><span id="zhbffdn" class="o">.</span><span id="ltdfrhn" class="n">QApplication</span><span id="tbvpjhf" class="p">(</span><span id="fvfjvlj" class="n">sys</span><span id="jrlvzxd" class="o">.</span><span id="tjlnhvt" class="n">argv</span><span id="lzlfhtr" class="p">)</span> <span id="xvhtdbb" class="n">ex</span> <span id="rpblnvl" class="o">=</span> <span id="ppjtfnl" class="n">Example</span><span id="vdnrbbh" class="p">()</span> <span id="zzlfxpl" class="n">sys</span><span id="xvpbtdr" class="o">.</span><span id="bztxzhx" class="n">exit</span><span id="jzvnrzf" class="p">(</span><span id="tbvprxp" class="n">app</span><span id="djdhzrx" class="o">.</span><span id="ttnzljz" class="n">exec_</span><span id="vdnjbrp" class="p">())</span> <span id="ltvfhxv" class="k">if</span> <span id="hfpjdlr" class="n">__name__</span> <span id="thlfrpn" class="o">==</span> <span id="lldpjzh" class="s">'__main__'</span><span id="jzbdnvl" class="p">:</span> <span id="xvdjlxd" class="n">main</span><span id="bjdhjxn" class="p">()</span> </pre></div> </div> <p>鎴戜滑鍒涘緩浜嗕竴涓柊鐨勪俊鍙風О涓?closeApp 銆傝繖涓俊鍙峰湪榧犳爣鐐瑰嚮鏃跺皢琚彂閫併傝岃繖涓俊鍙峰張鍜?<tt class="docutils literal"><span id="pnhhtrp" class="pre">QtGui.QMainWindow</span></tt> 鐨?<tt class="docutils literal"><span id="dbvpbhx" class="pre">close()</span></tt> 妲界浉榪炴帴銆?/p> <div id="thlnzrh" class="highlight-python"><div id="zzjvpdd" class="highlight"><pre><span id="xxhlvtj" class="k">class</span> <span id="brlxhhx" class="nc">Communicate</span><span id="pnzdxnd" class="p">(</span><span id="fdprdlz" class="n">QtCore</span><span id="xdpjtfd" class="o">.</span><span id="rzbnppf" class="n">QObject</span><span id="rrjvhfn" class="p">):</span> <span id="ltdpzpp" class="n">closeApp</span> <span id="vtvxhhx" class="o">=</span> <span id="zxjvfnl" class="n">QtCore</span><span id="ltnzbxp" class="o">.</span><span id="fnfhdbr" class="n">pyqtSignal</span><span id="lbvppnv" class="p">()</span> </pre></div> </div> <p>鎴戜滑鍒涘緩浜嗗熀浜?<tt class="docutils literal"><span id="fnxrdbb" class="pre">QtCore.QObject</span></tt> 鐨勭被銆傚綋瀹冭瀹炰緥鍖栧悗灝卞垱寤轟簡涓涓?closeApp 淇″彿銆?/p> <div id="fdffhpv" class="highlight-python"><div id="xfzlddl" class="highlight"><pre><span id="flxjvbb" class="bp">self</span><span id="xfpbvtj" class="o">.</span><span id="nvpzljr" class="n">c</span> <span id="dllxtzb" class="o">=</span> <span id="fnrdvnl" class="n">Communicate</span><span id="bjdnhfl" class="p">()</span> <span id="rzlnhfd" class="bp">self</span><span id="brdfjpf" class="o">.</span><span id="dbvnrfd" class="n">c</span><span id="zpjlpxd" class="o">.</span><span id="hfjdxnl" class="n">closeApp</span><span id="flxzlnv" class="o">.</span><span id="dlnjdrh" class="n">connect</span><span id="hxjdxdb" class="p">(</span><span id="ljvxhxr" class="bp">self</span><span id="xvrlnlb" class="o">.</span><span id="hhjlpdt" class="n">close</span><span id="ndxzvtb" class="p">)</span> </pre></div> </div> <p>綾?<tt class="docutils literal"><span id="pfrlnnt" class="pre">Communicate</span></tt> 鐨勫疄渚嬪氨琚垱寤轟簡銆傛垜浠妸 <tt class="docutils literal"><span id="jbtxhnd" class="pre">QtGui.QMainWindow</span></tt> 鐨?<tt class="docutils literal"><span id="rjlfhxv" class="pre">close()</span></tt> 妲借繛鎺ュ埌淇″彿 closeApp 涓娿?/p> <div id="flphjrh" class="highlight-python"><div id="brtvrzx" class="highlight"><pre><span id="xvhjljb" class="k">def</span> <span id="ddnzbrp" class="nf">mousePressEvent</span><span id="tjvhzxn" class="p">(</span><span id="ntnztlj" class="bp">self</span><span id="jhddxxf" class="p">,</span> <span id="jhrlvdj" class="n">event</span><span id="vlfrljz" class="p">):</span> <span id="bbdfpnn" class="bp">self</span><span id="ltnxjxx" class="o">.</span><span id="ntfzjhx" class="n">c</span><span id="xjlxhtz" class="o">.</span><span id="vdfrjhp" class="n">closeApp</span><span id="dtfpbrp" class="o">.</span><span id="dtvhtrh" class="n">emit</span><span id="fnfrdbj" class="p">()</span> </pre></div> </div> <p>褰撻紶鏍囨寚閽堝湪紿楀彛涓偣鍑伙紝淇″彿 closeApp 灝辮鍙戦佷簡銆?/p> <hr class="docutils" /> <p>鍦ㄨ繖涓儴鍒嗭紝鎴戜滑娑夊強浜嗕俊鍙蜂笌妲姐?/p> </div> </div> </div> </div> </div> <img src ="http://www.shnenglu.com/mirguest/aggbug/164984.html" width = "1" height = "1" /><br><br><div align=right><a style="text-decoration:none;" href="http://www.shnenglu.com/mirguest/" target="_blank">mirguest</a> 2012-02-05 10:05 <a href="http://www.shnenglu.com/mirguest/archive/2012/02/05/164984.html#Feedback" target="_blank" style="text-decoration:none;">鍙戣〃璇勮</a></div>]]></description></item></channel></rss> <footer> <div class="friendship-link"> <p>感谢您访问我们的网站,您可能还对以下资源感兴趣:</p> <a href="http://www.shnenglu.com/" title="精品视频久久久久">精品视频久久久久</a> <div class="friend-links"> </div> </div> </footer> <a href="http://www.ogus.cn" target="_blank">国产香蕉久久精品综合网</a>| <a href="http://www.czyhfzc.cn" target="_blank">久久久久国产精品嫩草影院</a>| <a href="http://www.b2721.cn" target="_blank">久久无码人妻一区二区三区 </a>| <a href="http://www.51fsyf.cn" target="_blank">91精品国产综合久久婷婷</a>| <a href="http://www.ijtz.cn" target="_blank">成人综合伊人五月婷久久</a>| <a href="http://www.dgvs.cn" target="_blank">国产99久久久国产精免费</a>| <a href="http://www.56dn.cn" target="_blank">久久久久亚洲精品无码网址</a>| <a href="http://www.maishuhua.cn" target="_blank">久久久久亚洲精品日久生情 </a>| <a href="http://www.zjfinancial.cn" target="_blank">无码国内精品久久人妻蜜桃</a>| <a href="http://www.gd44.cn" target="_blank">国产一区二区三区久久精品</a>| <a href="http://www.micgroup.cn" target="_blank">四虎亚洲国产成人久久精品</a>| <a href="http://www.bpdb.com.cn" target="_blank">久久夜色精品国产网站</a>| <a href="http://www.4527.com.cn" target="_blank">久久艹国产</a>| <a href="http://www.cybook.com.cn" target="_blank">国内精品伊人久久久久av一坑</a>| <a href="http://www.ssui1.cn" target="_blank">久久乐国产精品亚洲综合</a>| <a href="http://www.hm661.cn" target="_blank">亚洲狠狠婷婷综合久久蜜芽</a>| <a href="http://www.suntiepu.cn" target="_blank">久久精品国产亚洲Aⅴ香蕉</a>| <a href="http://www.coldcha.cn" target="_blank">欧美牲交A欧牲交aⅴ久久</a>| <a href="http://www.cfgcurn.cn" target="_blank">久久综合色之久久综合</a>| <a href="http://www.jddy.net.cn" target="_blank">久久精品国产亚洲av影院</a>| <a href="http://www.shipin168.cn" target="_blank">香蕉久久夜色精品国产2020</a>| <a href="http://www.lnboxue.cn" target="_blank">93精91精品国产综合久久香蕉</a>| <a href="http://www.2mo04k.cn" target="_blank">亚洲国产精品无码久久一区二区 </a>| <a href="http://www.miror.com.cn" target="_blank">久久久精品人妻一区二区三区四</a>| <a href="http://www.jkwovf.cn" target="_blank">国产女人aaa级久久久级</a>| <a href="http://www.seostars.cn" target="_blank">久久99精品久久久久久久久久</a>| <a href="http://www.girls18.cn" target="_blank">伊人久久无码精品中文字幕</a>| <a href="http://www.bobofans.cn" target="_blank"> 久久综合狠狠综合久久激情 </a>| <a href="http://www.0510beta.cn" target="_blank">亚洲国产精品无码久久一线</a>| <a href="http://www.lyblogs.cn" target="_blank">国产69精品久久久久久人妻精品</a>| <a href="http://www.pr010.cn" target="_blank">久久国产香蕉一区精品</a>| <a href="http://www.yuzeyuanyi.cn" target="_blank">久久99国产精品99久久</a>| <a href="http://www.tongshuntaoci.cn" target="_blank">久久国产亚洲高清观看</a>| <a href="http://www.glrsjk.cn" target="_blank">亚洲国产另类久久久精品小说</a>| <a href="http://www.101922.cn" target="_blank">色播久久人人爽人人爽人人片AV</a>| <a href="http://www.oaaz.cn" target="_blank">看全色黄大色大片免费久久久</a>| <a href="http://www.smegdmm.cn" target="_blank">国产高潮久久免费观看</a>| <a href="http://www.pcadmin.cn" target="_blank">久久免费视频观看</a>| <a href="http://www.seostars.cn" target="_blank">国内精品久久久久</a>| <a href="http://www.sanxiangcn.cn" target="_blank">2021国产成人精品久久</a>| <a href="http://www.tomp3.cn" target="_blank">久久久精品国产Sm最大网站</a>| <script> (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })(); </script> </body>