_Widget

import os,sys

from bqt import QtCore, QtGui

import bglobal

class SpinBoxWidget(QtGui.QSpinBox):
def init(self,value = None,parent = None):
super(SpinBoxWidget,self).init(parent = parent)
if value:
try:
value = int(value)
self.setValue(value)
except:
pass

def getValue(self):
    return self.value()

class DoubleSpinBoxWidget(QtGui.QDoubleSpinBox):
def init(self,value = None,parent = None):
super(DoubleSpinBoxWidget,self).init(parent = parent)
self.setDecimals(2)
self.setSingleStep(0.1)
if value:
try:
value = int(value)
self.setValue(value)
except:
pass

def getValue(self):
    return self.value()

class ComboBoxWidget(QtGui.QComboBox):
def init(self,items = [],parent = None):
super(ComboBoxWidget,self).init(parent = parent)
if items:
self.addItems(items)

def getValue(self):
    return self.currentText()

def setValue(self,text):
    self.setCurrentIndex(self.findText(text))

class TextWidget(QtGui.QLineEdit):
def init(self,text = None,parent = None):
super(TextWidget,self).init(parent = parent)
if not text:
text = ”
text = str(text)
self.setValue(text)

def getValue(self):
    return self.text()


def setValue(self,text):
    self.setText(text)

class GetDirWidget(QtGui.QWidget):

def __init__(self,path = None,parent = None):
    super(GetDirWidget,self).__init__(parent = parent)
    if not path:
        path = ''
    path = str(path)

    self.layout = QtGui.QHBoxLayout()
    self.setLayout(self.layout)

    self.lineEdit = QtGui.QLineEdit(path)
    sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,QtGui.QSizePolicy.Preferred)
    sizePolicy.setHorizontalStretch(0)
    sizePolicy.setVerticalStretch(0)
    self.lineEdit.setSizePolicy(sizePolicy)
    self.layout.addWidget(self.lineEdit)

    self.button = QtGui.QPushButton('...')
    sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,QtGui.QSizePolicy.Preferred)
    sizePolicy.setHorizontalStretch(0)
    sizePolicy.setVerticalStretch(0)
    self.button.setSizePolicy(sizePolicy)
    self.button.setFixedWidth(25)
    self.layout.addWidget(self.button)
    self.button.clicked.connect(self.setPath)


def getValue(self):
    return bglobal.toCurrent(self.lineEdit.text())


def setValue(self,text):
    self.lineEdit.setText(bglobal.toCurrent(text))


def setPath(self):
    dir_name = QtGui.QFileDialog.getExistingDirectory(parent = self,
        directory = os.path.dirname(self.getValue()))

    if dir_name:
        if isinstance(dir_name,(list,tuple)):
            dir_name = dir_name[0]

        self.setValue(dir_name)
        return dir_name

class CheckBoxGroupWidget(QtGui.QWidget):

def __init__(self,names = [],parent = None):
    super(CheckBoxGroupWidget,self).__init__(parent = parent)
    self.layout = QtGui.QHBoxLayout()
    self.setLayout(self.layout)
    self.widget = list()
    if names:
        for i in names:
            widget = QtGui.QCheckBox(i,self)
            sizePolicy = QtGui.QSizePolicy(QtGui.QSizePolicy.Minimum,QtGui.QSizePolicy.Preferred)
            sizePolicy.setHorizontalStretch(0)
            sizePolicy.setVerticalStretch(0)
            widget.setSizePolicy(sizePolicy)

            widget.setFocus()

            self.layout.addWidget(widget)
            self.widget.append(widget)


def getValue(self):
    return ','.join([i.text() for i in self.widget if i.isChecked()])


def setValue(self,text):
    if not isinstance(text,basestring):
        return

    names = text.split(',')
    for i in self.widget:
        if i.text() in names:
            i.setChecked(True)
        else:
            i.setChecked(False)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值