python语言的记事本在哪_python2.7+pyqt4实现记事本基本功能

#coding:utf-8

importsysfrom PyQt4.QtGui importQMainWindowfrom PyQt4.QtGui importQApplication, QAction, QIcon, QFileDialog, QTextEditfrom PyQt4.QtCore importSIGNAL, SLOTimportcodecsimportos.pathimportsys

reload(sys)

sys.setdefaultencoding("utf-8")classMyWindow(QMainWindow):def __init__(self):

QMainWindow.__init__(self)

self.setWindowTitle("PyQt")

self.resize(300, 200)

self.create_menu_bar()

self.create_menu_action()

self.add_menu_action()

self.create_tool_bar()

self.add_tool_action()

self.maintext=QTextEdit()

self.setCentralWidget(self.maintext)defcreate_menu_bar(self):

menu=self.menuBar()

self.FileMenu= menu.addMenu(u'文件')

self.EditMenu= menu.addMenu(u'编辑')

self.SearchMenu= menu.addMenu(u'搜索')defcreate_menu_action(self):

self.OpenMenu= QAction(QIcon('images/open.png'),u'打开', self)

self.OpenMenu.setShortcut('Ctrl+O')

self.OpenMenu.setStatusTip(u'打开文件')

self.OpenMenu.connect(self.OpenMenu, SIGNAL('triggered()'), self.open_file)

self.SaveMenu= QAction(QIcon('images/save.png'), u'保存', self)

self.SaveMenu.setShortcut('Ctrl+S')

self.SaveMenu.setStatusTip(u'保存文件')

self.connect(self.SaveMenu, SIGNAL('triggered()'), self.save_file)

self.SaveAsMenu= QAction(QIcon('images/saveas.png'), u'另存为', self)

self.SaveAsMenu.setShortcut('Ctrl+Alt+S')

self.SaveAsMenu.setStatusTip(u'文件另存为')

self.connect(self.SaveAsMenu, SIGNAL('triggered()'), self.save_as_file)

self.ExitMenu= QAction(QIcon('images/exit.png'), u'退出', self)

self.ExitMenu.setShortcut('Ctrl+Q')

self.ExitMenu.setStatusTip(u'退出程序')

self.connect(self.ExitMenu, SIGNAL('triggered()'), SLOT('close()'))defadd_menu_action(self):

self.FileMenu.addAction(self.OpenMenu)

self.FileMenu.addAction(self.SaveMenu)

self.FileMenu.addAction(self.SaveAsMenu)

self.FileMenu.addAction(self.ExitMenu)defcreate_tool_bar(self):

self.Open_tool= self.addToolBar(u'打开')

self.Save_tool= self.addToolBar(u'保存')

self.SaveAs_tool= self.addToolBar(u'另存为')

self.Exit_tool= self.addToolBar(u'退出')defadd_tool_action(self):

self.Open_tool.addAction(self.OpenMenu)

self.Save_tool.addAction(self.SaveMenu)

self.SaveAs_tool.addAction(self.SaveAsMenu)

self.Exit_tool.addAction(self.ExitMenu)defopen_file(self):

self.filename=QFileDialog.getOpenFileName()ifos.path.isfile(self.filename):

with codecs.open(self.filename,'r','utf-8') as f:

s=f.read()

self.maintext.setText(s)defsave_file(self):if 'filename' indir(self):with codecs.open(self.filename,'w','utf-8') as f:

f.write(self.maintext.toPlainText())else:

self.save_as_file()defsave_as_file(self):

self.filename=QFileDialog.getSaveFileName()

with codecs.open(self.filename,'w','utf-8') as f:

f.write(self.maintext.toPlainText())

app=QApplication(sys.argv)

mywindow=MyWindow()

mywindow.show()

app.exec_()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值