#!/usr/bin/env python

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

import sip

sip.setapi('QString', 2)

sip.setapi('QVariant', 2)

from PyQt4 import QtCore, QtGui

class MyWindow(QtGui.QWidget):

def __init__(self, parent=None):

super(MyWindow, self).__init__(parent)

self.pathRoot = QtCore.QDir.rootPath()

self.model = QtGui.QFileSystemModel(self)

self.model.setRootPath(self.pathRoot)

self.indexRoot = self.model.index(self.model.rootPath())

self.treeView = QtGui.QTreeView(self)

self.treeView.setModel(self.model)

self.treeView.setRootIndex(self.indexRoot)

self.treeView.clicked.connect(self.on_treeView_clicked)

self.labelFileName = QtGui.QLabel(self)

self.labelFileName.setText("File Name:")

self.lineEditFileName = QtGui.QLineEdit(self)

self.labelFilePath = QtGui.QLabel(self)

self.labelFilePath.setText("File Path:")

self.lineEditFilePath = QtGui.QLineEdit(self)

self.gridLayout = QtGui.QGridLayout()

self.gridLayout.addWidget(self.labelFileName, 0, 0)

self.gridLayout.addWidget(self.lineEditFileName, 0, 1)

self.gridLayout.addWidget(self.labelFilePath, 1, 0)

self.gridLayout.addWidget(self.lineEditFilePath, 1, 1)

self.layout = QtGui.QVBoxLayout(self)

self.layout.addLayout(self.gridLayout)

self.layout.addWidget(self.treeView)

@QtCore.pyqtSlot(QtCore.QModelIndex)

def on_treeView_clicked(self, index):

indexItem = self.model.index(index.row(), 0, index.parent())

fileName = self.model.fileName(indexItem)

filePath = self.model.filePath(indexItem)

self.lineEditFileName.setText(fileName)

self.lineEditFilePath.setText(filePath)

if __name__ == "__main__":

import sys

app = QtGui.QApplication(sys.argv)

app.setApplicationName('MyWindow')

main = MyWindow()

main.resize(666, 333)

main.move(app.desktop().screen().rect().center() - main.rect().center())

main.show()

sys.exit(app.exec_())

pyqt例子搜索文本的更多相关文章

  1. whoosh----索引|搜索文本类库

    先了解基本概念和步骤: Quick Start Whoosh是一个索引文本和搜索文本的类库,他可以为你提供搜索文本的服务,比如如果你在创建一个博客的软件,你可以用whoosh为它添加添加一个搜索功能以 ...

  2. C#编程实现Excel文档中搜索文本

    有了在Word文档中编程实现搜索文本的经验,在Excel中实现这个功能也并非难事. 打开Excel的VBA帮助,查看Excel的对象模型,很容易找到完成这个功能需要的几个集合和对象:Applicati ...

  3. 【Python自然语言处理】第一章学习笔记——搜索文本、计数统计和字符串链表

    这本书主要是基于Python和一个自然语言工具包(Natural Language Toolkit, NLTK)的开源库进行讲解 NLTK 介绍:NLTK是一个构建Python程序以处理人类语言数据的 ...

  4. JQuery+AJAX实现搜索文本框的输入提示功能

    平时使用谷歌搜索的时候发现只要在文本框里输入部分单词或字母,下面马上会弹出一个相关信息的内容框可供选择.感觉这个功能有较好的用户体验,所以也想在自己的网站上加上这种输入提示框. 实现的原理其实很简单, ...

  5. grep搜索文本

    正则匹配: grep -E "[a-z]+" 只输出匹配到的文本: echo this is a line. | grep -o -E "[a-z]+\." 统 ...

  6. css 样式设计(一)( 在线150个例子 | 背景 | 文本 | 字体 | 链接 | 列表 | 表格 | 盒模型 | 边框 | 轮廓 | 边距 | 填充 |分组和嵌套 | 尺寸 | 定位 | 浮动 |对齐 )

    一.css在线150个例子 http://www.w3cschool.cc/css/css-examples.html 二.背景图片水平方向重复 : body { background-image:u ...

  7. Linux 命令 - grep: 正则搜索文本

    grep 搜索文本文件中与指定正则表达式匹配的行 命令格式 grep [OPTIONS] PATTERN [FILE...] 命令参数 Generic Program Information --he ...

  8. vi下搜索文本

    ) /user ) n 下一个匹配 ) N 上一个匹配 ) ?user 从结尾开始搜索 ) :nohlsearch 关闭高亮显示6) :100 跳转到第100行

  9. linux 搜索文本

    find -type f -name '*.php'|xargs grep '127.0.0.1'  搜索所有.php 内容 127.0.0.1 转自:http://www.cnblogs.com/w ...

随机推荐

  1. OpenCV中OpenCL模块函数

    It currently develop and test on GPU devices only. This includes both discrete GPUs(NVidia,AMD), as ...

  2. Spring3 MVC 使用JSON进行前后台数据交互

    http://wbj0110.iteye.com/blog/2007918 在 Spring3 中,响应.接受 JSON都十分方便.向前台返回 JSON 格式的数据: 1 2 3 4 5 6 7 8 ...

  3. C++沉思录之三——设计容器类

    一.对容器的基本认识 总的来说,容器应该包含放在其中的对象的副本,而不是对象本身. 二.复制容器意味着什么? 通常将容器成为模板,而容器内的对象的类型就是模板参数.Container<T> ...

  4. (二)一个工作任务引起的乱战——C++程序编译为dll,让C#调用

    C++程序编译为C#可调用的dll的过程: 1.新建一个Win32 Console Application 项目,项目名为:DLLDemo,下一步选择Application type为DLL; 2.在 ...

  5. (转)SQL中的ISNULL函数介绍

    SQL中有多种多样的函数,下面将为您介绍SQL中的ISNULL函数,包括其语法.注释.返回类型等,供您参考,希望对您学习SQL能够有所帮助. ISNULL 使用指定的替换值替换 NULL. 语法ISN ...

  6. JobDeer 的《程序员必读的职业规划书》

    JobDeer 的<程序员必读的职业规划书> 关键字 持续性,人生规划,职业规划 概念 职业规划三部分: 职业定位 目标设定 通道设计 职业价值论: 能为公司做什么 同样的能力再不同公司价 ...

  7. RxJava漫谈-RxAndroid使用

    RxJava在github上的地址:https://github.com/ReactiveX/RxJava RxAndroid在github上的地址:https://github.com/Reacti ...

  8. Arcgis - Personal Geodatabase 和 File Geodatabase的区别.

     一.平台支持: 1.Personal Geodatabase:仅可在Windows 上运行: 2.File Geodatabase:跨平台支持,可在Windows 及UNIX.linux上运行. 评 ...

  9. 旧版asp.net 发送邮件代码

    说到发送邮件发送,先提一下SMTP(呵呵,高手就跳过这一段吧!). SMTP的全称是“Simple Mail Transfer Protocol”,即简单邮件传输协议.它是一组用于从源地址到目的地址传 ...

  10. Popular Cows (POJ No.2186)

    Description Every cow's dream is to become the most popular cow in the herd. In a herd of N (1 <= ...