1. 首页
  2. IT资讯

PyQt 编程入门之 信号与槽【0】

“u003Cdivu003Eu003Cpu003EGUI程序不同于普通的批处理程序,会有一个一直在运行的事件循环,检查诸如鼠标点击、键盘按下等用户事件和诸如计时器超时,窗口重绘、网络连接等系统事件。当我们调用应用的exec_()方法时,程序就进入了主循环。在PyQt中使用的事件处理机制被称为”信号和槽“。u003Cu002Fpu003Eu003Cpu003E每个QObject,包括PyQt的全部窗口部件,因为它们都派生自QWidget(也是QObject的一个子类),都会支持信号和槽机制。PyQt的所有窗口部件都有一系列的预定义信号,如窗口大小改变信号,鼠标点击信号……u003Cu002Fpu003Eu003Cpu003E无论信号何时发射,默认情况下,PyQt都只是简单的将其扔掉。要截取一个信号,就必须将信号连接的特定的槽上去。在PyQt中,槽是可调用的(callable)的任何东西,如任意的函数或者方法。u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp1.pstatp.comu002Flargeu002Fdfic-imagehandleru002F871a1d3b-d886-48d7-b3a7-a18537803b38″ img_width=”640″ img_height=”381″ alt=”PyQt 编程入门之 信号与槽【0】” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cpu003E大部分的窗口部件也提前预置了一些槽,所有有些时候可以直接把预置的信号和预置的槽相连接,无需做任何额外的事情就可以得到想要的行为效果。无论是QDial 还是QSpinBox都有valueChanged()信号,当它触发时,会带着新的值作为信号参数。这两个部件也都有setValue()槽,带有整数型参数值。因此,可直接将这两个部件的这两个信号和槽相互连接起来,无论用户改变了哪一个窗口部件,都会让另一个部件做出相应的响应。程序代码如下:u003Cu002Fpu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002Fpgc-imageu002F99cabcb409464f42af48facd0f82321c” img_width=”275″ img_height=”152″ alt=”PyQt 编程入门之 信号与槽【0】” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp9.pstatp.comu002Flargeu002Fpgc-imageu002F5beeb9ce3f2b43c1b7d2855c7331029f” img_width=”594″ img_height=”425″ alt=”PyQt 编程入门之 信号与槽【0】” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cdiv class=”pgc-img”u003Eu003Cimg src=”http:u002Fu002Fp3.pstatp.comu002Flargeu002Fpgc-imageu002Ff31eb98b9e0d4b8f82a4cb2ddb2471a3″ img_width=”594″ img_height=”481″ alt=”PyQt 编程入门之 信号与槽【0】” inline=”0″u003Eu003Cp class=”pgc-img-caption”u003Eu003Cu002Fpu003Eu003Cu002Fdivu003Eu003Cu002Fdivu003E”

原文始发于:PyQt 编程入门之 信号与槽【0】

主题测试文章,只做测试使用。发布者:玩家L-,转转请注明出处:http://www.cxybcw.com/10672.html

联系我们

13687733322

在线咨询:点击这里给我发消息

邮件:1877088071@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

QR code