#!/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. Intent 数据传递 总结

    系统API 可以传递的数据类型 1.传递8大基本类型+String+CharSequence及其数组类型 2.传递ArrayList集合     public Intent putIntegerArr ...

  2. 新手们的GDI+绘制方格

    //绘制panel控件触发的事件 //不可在窗体加载时绘制方格        private void panel1_Paint(object sender, PaintEventArgs e)    ...

  3. js 日期控件 可以显示为和历

    日期控件的js <!-- /** * Calendar * @param beginYear 1990 * @param endYear 2010 * @param language 0(zh_ ...

  4. Sql Server导出表结构Excel

    SELECT 表名 Then D.name Else '' End, 表说明 Then isnull(F.value,'') Else '' End, 字段序号 = A.colorder, 字段名 = ...

  5. C#字符串的比较

    Console.WriteLine("输入字符1"); string n1 = Console.ReadLine(); Console.WriteLine("输入字符2& ...

  6. grunt之dev-pro环境切换

    在项目开发过程中和发布阶段需要在开发环境(dev)和生产环境(pro)之间切换,静态文件引用的切换等等. 使用grunt要如何解决上述问题,这里提供一个案列供参考. 用到的grunt插件: 文件合并: ...

  7. js获取url的各项参数

    function getQueryStringArgs() { //取得查询字符串并去掉开头的问号 var qs = location.search.length > 0 ? location. ...

  8. java学习笔记 (1) —— Strut2.3.24环境搭建

    1.打开MyEclipse,添加WebProject,名称为testStruts2 2.配置Tomcat环境. 1) 在窗口——首选项——MyEclipse——Servers下找到Tomcat6.x ...

  9. 一步步学会使用SeaJS(转)

    原文出处:一步步学会使用SeaJS 2.0 本文分为以下8步,熟悉之后就能够熟练使用SeaJS,从此之后你的生活会变得更加轻松愉悦! 1.SeaJS是什么? 2.下载并检阅SeaJS 3.建立工程和各 ...

  10. 复习css3的部分属性

    利用css3实现一个半月形的西瓜,利用queue实现吃西瓜的动画.练习例子 css3: 1.圆角 border-radius:100%; border-top-left-radius:5px; 2.变 ...