pyqt label窗口变化

#_*_ coding: utf-8 _*_

from PyQt4.QtCore import *

from PyQt4.QtGui import *

import sys

QTextCodec.setCodecForTr(QTextCodec.codecForName("utf8"))

class FindDialog(QDialog):

def __init__(self,parent = None):

super(FindDialog, self).__init__(parent)

self.setWindowTitle(self.tr("Find"))

# QLabel控件中显示的图像和文字的位置可以用setAlignment和setIndent方法调整。文字内容也可以用setWordWrap方法分成几行。

label = QLabel(self.tr("Find &what:"))

lineEdit = QLineEdit()

# setBuddy方法可以将QLabel控件与QLineEdit控件联系起来,从而将键盘焦点转移到QLineEdit控件上

label.setBuddy(lineEdit)

caseCheckBox = QCheckBox(self.tr("Match &case"))

backwardCheckBox = QCheckBox(self.tr("Search &backward"))

self.findButton = QPushButton(self.tr("&Find"))

self.findButton.setDefault(True)

self.findButton.setEnabled(False)

closeButton = QPushButton(self.tr("Close"))

QObject.connect(lineEdit,SIGNAL("textChanged(const QString &)"),self.enableFindButton)

QObject.connect(self.findButton, SIGNAL("clicked()"), self.findClicked)

QObject.connect(closeButton, SIGNAL("clicked()"), self, SLOT("close()"))

topLeftLayout = QHBoxLayout()

topLeftLayout.addWidget(label)

topLeftLayout.addWidget(lineEdit)

leftLayout = QVBoxLayout()

leftLayout.addLayout(topLeftLayout)

leftLayout.addWidget(caseCheckBox)

leftLayout.addWidget(backwardCheckBox)

rightLayout = QVBoxLayout()

rightLayout.addWidget(self.findButton)

rightLayout.addWidget(closeButton)

rightLayout.addStretch()

mainLayout = QHBoxLayout()

mainLayout.addLayout(leftLayout)

mainLayout.addLayout(rightLayout)

self.setLayout(mainLayout)

self.setFixedHeight(self.sizeHint().height())

# 自定义TAB键的顺序,只两个参数不方便

# QWidget.setTabOrder(closeButton,self.findButton)

#QWidget.setTabOrder(self.findButton,backwardCheckBox)

def findNext(str,cs):

pass

def findPrevious(str,cs):

pass

def findClicked(self):

text = lineEdit.text()

if caseCheckBox.isChecked():

cs = Qt.CaseSensitive

else:

cs = Qt.CaseInsensitive

if backwardCheckBox.isChecked():

self.findPrevious.emit(text,cs)

else: self.findNext.emit(text,cs)

def enableFindButton(self, text):

self.findButton.setEnabled(not text.isEmpty())

app = QApplication(sys.argv)

aaa = FindDialog()

aaa.show()

app.exec_()  # 测试ALT+W, ALT+C, ALT+B, ALT+F,默认的TAB键是控制创建的顺序 # QWidget::setTabOrder()可以改变这个顺序  # connect(lineEdit, SIGNAL(textChanged(const QString &)),this, SIGNAL(updateRecord(const QString &)));

如图:

时间: 2024-10-10 02:44:45

pyqt label窗口变化的相关文章

CSS3+HTML5特效8 - 顶部和右侧固定,左侧随窗口变化的布局

原文:CSS3+HTML5特效8 - 顶部和右侧固定,左侧随窗口变化的布局 效果演示 实现原理 使用3个div(一个是顶部栏,一个是左侧栏,一个是右侧栏): 使用checkbox作为判断是否显示和隐藏右侧栏,点击显示和隐藏label实现最终效果. 代码说明 css + ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41

CSS布局:div高度随窗口变化而变化(BUG会有滚动条)

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>CSS布局:div高度随窗口变化而变化</

div高度随窗口变化而变化

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head><title>CSS布局:div高度随窗口变化而变化</

窗口变化相关消息 OnSize、OnSizing和OnGetMinMaxInfo

最近用到窗口变化的一些东西,遇到几个相关的消息函数,简要分析,作为备忘. 3个消息分别是:WM_SIZE.WM_SIZING.WM_GETMINMAXINFO:分别对应相应的处理函数:OnSize.OnSizing.OnGetMinMaxInfo. 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE. OnGetMinMaxInfo 这个函数在窗口初始化的时候会被调用一次,当窗口大小发生改变的时候也会被调用.利用这个函数,可以比

echarts使图标能自适应浏览器窗口变化,及经纬度转换

1.echarts使图标能自适应浏览器窗口变化 window.onresize = function () { myChart.resize(); //使第一个图表适应 myChart_pieMain.resize(); // 使第二个图表适应 } 2.map地图中经纬度与平面坐标转换 var arr = [117,36.4]; alert(myChart.chart.map.getPosByGeo("china",arr));  //map经纬度转成平面坐标 版权声明:本文为博主原创

Qt——组件位置随窗口变化

当我们用Qt Designer设计界面时,有时会面临这样一个问题:需要在窗口指定位置放置组件,并且当窗口位置大小改变时,该组件相对其父对象的位置是不变的,如下面两幅图所示 ,首先看上面这幅图,注意button的位置,我们想让button一直停留在该位置,我们刚开始做的可能是在designer中将button直接拖到该位置,编译运行后正是我们想要的结果,但是当我们拖动窗口,使窗口尺寸变化后,发现button位置改变了,如下面那副图所示.发生这种情况的原因很简单,直接拖放button到界面中,不加任

C++ : 窗口变化相关消息 OnSize、OnSizing和OnGetMinMaxInfo,onsizeonsizing

3个消息分别是:WM_SIZE.WM_SIZING.WM_GETMINMAXINFO:分别对应相应的处理函数:OnSize.OnSizing.OnGetMinMaxInfo. 当窗口大小发生变化时,响应的顺序依次是:WM_GETMINMAXINFO-->WM_SIZING-->WM_SIZE. OnGetMinMaxInfo 这个函数在窗口初始化的时候会被调用一次,当窗口大小发生改变的时候也会被调用.利用这个函数,可以比较方便的实现窗口最大最小尺寸的控制. 参数lpMMI是一个结构体指针,其中

C# winform中使用Panel调节窗口变化是各控件的位置(转)

我的目的是在窗口上有些控件,在窗口大小变化时,上面的控件位置不动,大小也不动.下面的控件随着窗口的大小变化而变大. 做法是用两个panel,panelTop和panelFill.上面的控件都放到panelTop里面.下面的控件都放到panelFill中. 然后设置PanelTop的Dock属性是Top: 设置panelFill的Dock属性是Fill. 但是总是出现下面的PanelFill把上面的PanelTop覆盖的问题.可以看见实际上下面的控件顶端已经跑到上面的PanelTop那儿去了. 解

echarts图表初始大小问题及echarts随窗口变化自适应

最近在做一个轮播图,使用的是element的Carousel走马灯,每一个走马灯里是eachrts图,开始页面加载的时候发现echarts图并不能自适应,开始以为是走马灯的问题,后来发现不是 不知道大家在用echarts的时候有没有遇到这种情况: 最开始盛放图表的容器是隐藏(或者tab切换)的,然后再显示的时候,里面echarts图表就没用初始大小了.比如我遇到的这种: 有童鞋这会儿估计看出原因了:因为元素最初隐藏,再显示之后没有自动变化宽度,所以echarts图表没有初始宽高,官方文档的说法: