pyqt5 textEdit、lineEdit操作的示例代码
1.定义一个textEdit/lineEdit:(lineEdit只需要将代码中的QTextEdit改为QLineEdit)
self.textEdit=QtWidgets.QTextEdit(Dialog) self.textEdit.setGeometry(QtCore.QRect(70,90,171,391)) self.textEdit.setObjectName("textEdit") self.textEdit.setReadOnly(True)#设置为只读,即可以在代码中向textEdit里面输入,但不能从界面上输入,没有这行代码即可以从界面输入
2.从代码中将字符串显示到textEdit:
str='要显示的字符串' self.textEdit.setText(str)
3.追加字符串:
str='要显示的字符串' self.textEdit_2.append(str)
4.显示数字到textEdit:数字必须要转换成字符串
count=10 str=str(count) self.textEdit.setText(str)
5.读取textEdit中的文字:textEdit和LineEdit中的文字读取方法是不一样的
str1=self.textEdit.toPlainText() #textEdit用toPlainText()方法 #linEdit直接用self.lineEdit.text()即可获取
PyQt5QTextEdit控件操作
fromPyQt5.Qtimport* importsys importmath #超链接 classMyTextEdit(QTextEdit): defmousePressEvent(self,me): print(me.pos()) link_str=self.anchorAt(me.pos()) if(len(link_str)>0): QDesktopServices.openUrl(QUrl(link_str)) returnsuper().mousePressEvent(me) classWindow(QWidget): def__init__(self): super().__init__() self.setWindowTitle("QTextEdit的学习") self.resize(500,500) self.setWindowIcon(QIcon("D:\ICO\ooopic_1540562292.ico")) self.setup_ui() defsetup_ui(self): te=MyTextEdit(self) self.te=te te.move(100,100) te.resize(300,300) te.setStyleSheet("background-color:cyan;") but=QPushButton(self) but.move(50,50) but.setText("测试按钮") #self.占位文本的提示() self.文本内容的设置() #self.格式设置和合并() but.pressed.connect(self.but_test) #te.textCursor().insertTable(5,3) #te.insertHtml("xxx"*300+"撩课"+"aaa"*200) te.insertHtml("xxx"*300+" 撩课"+"aaa"*200) te.textChanged.connect(self.text_change)#文本发生改变 te.selectionChanged.connect(self.selection_change)#选中的文本发生改变 te.copyAvailable.connect(self.copy_a)#复制是否可用 defcopy_a(self,yes): print("复制是否可用",yes) defselection_change(self): print("文本选中的内容发生了改变") deftext_change(self): print("文本内容发生了改变") defbut_test(self): #self.te.clear() #self.光标插入内容() #self.内容和格式的获取() #self.字体设置() #self.颜色设置() #self.字符设置() #self.常用编辑操作() #self.只读设置() #self.AB功能测试() self.打开超链接() def打开超链接(self): pass defAB功能测试(self): #self.te.setTabChangesFocus(True) print(self.te.tabStopDistance()) self.te.setTabStopDistance(100) def只读设置(self): self.te.setReadOnly(True) self.te.insertPlainText("itlike") def滚动到锚点(self): self.te.scrollToAnchor("lk") def常用编辑操作(self): #self.te.copy() #self.te.paste() #self.te.selectAll() #self.te.setFocus() #QTextDocument.FindBackward print(self.te.find("xx",QTextDocument.FindBackward|QTextDocument.FindCaseSensitively)) self.te.setFocus() def字符设置(self): tcf=QTextCharFormat() tcf.setFontFamily("宋体") tcf.setFontPointSize(20) tcf.setFontCapitalization(QFont.Capitalize) tcf.setForeground(QColor(100,200,150)) self.te.setCurrentCharFormat(tcf) tcf2=QTextCharFormat() tcf2.setFontOverline(True) #self.te.setCurrentCharFormat(tcf2) self.te.mergeCurrentCharFormat(tcf2) def颜色设置(self): self.te.setTextBackgroundColor(QColor(200,10,10)) self.te.setTextColor(QColor(10,200,10)) def字体设置(self): #QFontDialog.getFont() self.te.setFontFamily("幼圆") self.te.setFontWeight(QFont.Black) self.te.setFontItalic(True) self.te.setFontPointSize(30) self.te.setFontUnderline(True) #font=QFont() #font.setStrikeOut(True) #self.te.setCurrentFont(font) def对齐方式(self): self.te.setAlignment(Qt.AlignCenter) def光标设置(self): print(self.te.cursorWidth()) ifself.te.overwriteMode(): self.te.setOverwriteMode(False) self.te.setCursorWidth(1) else: self.te.setOverwriteMode(True) self.te.setCursorWidth(10) def覆盖模式的设置(self): self.te.setOverwriteMode(True) print(self.te.overwriteMode()) def软换行模式(self): #self.te.setLineWrapMode(QTextEdit.NowWrap) #self.te.setLineWrapMode(QTextEdit.FixedPixelWidth) self.te.setLineWrapMode(QTextEdit.FixedColumnWidth) self.te.setLineWrapColumnOrWidth(8) def自动格式化(self): QTextEdit self.te.setAutoFormatting(QTextEdit.AutoBulletList)#录入*号自动产生格式 def开始和结束编辑块(self): tc=self.te.textCursor() #tc.beginEditBlock() tc.insertText("123") tc.insertBlock() tc.insertText("456") tc.insertBlock() #tc.cndEditBlock() tc.insertText("789") tc.insertBlock() def位置相关(self): tc=self.te.textCursor()#获取光标 print("是否在段落的结尾",tc.atBlockEnd) print("是否在段落的开始",tc.atBlockStart()) print("是否在文档的结尾",tc.atEnd()) print("是否在文档的开始",tc.atStart()) print("在第几列",tc.columnNumber()) print("光标位置",tc.position()) print("在文本块中的位置",tc.positionInBlock()) def文本字符的删除(self): tc=self.te.textCursor() #tc.deleteChar()#向右侧清除 tc.deletePreviousChar()#向左侧清除 self.te.setFocus() def文本的其他操作(self): tc=self.te.textCursor() #print(tc.selectionStart())#获取选中起始 #print(tc.selectionEnd())#获取选中结束 #tc.clearSelection()#清除选中 #self.te.setTextCursor()#设置光标 #print(tc.hasSelection()) tc.removeSelectedText() self.te.setFocus() def文本选中内容的获取(self): tc=self.te.textCursor() print(tc.selectedText()) QTextDocumentFragment print(tc.selection().toPlainText()) print(tc.selectedTableCells()) def文本选中和清空(self): tc=self.te.textCursor() #tc.setPosition(6,QTextCursor,KeepAnchor) #tc.movePosition(QTextCursor.Up,QTextCursor.KeepAnchor,1) tc.select(QTextCursor.WordUnderCursor) self.te.setTextCursor(tc) def格式设置和合并(self): #设置上下间距 tc=self.te.textCursor() tcf=QTextCharFormat() tcf.setFontFamily("幼圆") tcf.setFontPointSize(30) tcf.setFontOverline(True) tcf.setFontUnderline(True) tc.setCharFormat(tcf) returnNone #设置上下划线及字体大小 tc=self.te.textCursor() tcf=QTextCharFormat() tcf.setFontFamily("幼圆") tcf.setFontPointSize(30) tcf.setFontOverline(True) tcf.setFontUnderline(True) tc.setBlockCharFormat(tcf) pass def内容和格式的获取(self): tc=self.te.textCursor() QTextLine print(tc.block().text()) print(tc.blockNumber()) #print(tc.currentList().count()) pass def文本内容的设置(self): #设置普通文本内容 self.te.setPlainText(" ooo
") self.te.insertPlainText("ooo
") print(self.te.toPlainText()) #富文本的操作 self.te.setHtml("ooo
") self.te.insertHtml("社会我的顺哥
") print(self.te.toHtml()) def占位文本的提示(self): self.te.setPlaceholderText("请输入你的个人简介") def光标插入内容(self): tc=self.te.textCursor()#获取焦点 tff=QTextFrameFormat() tff.setBorder(10) tff.setBorderBrush(QColor(100,50,50)) tff.setRightMargin(50) tc.insertFrame(tff) doc=self.te.document() root_frame=doc.rootFrame() root_frame.setFrameFormat() returnNone tc=self.te.textCursor()#获取光标 tbf=QTextBlockFormat() tcf=QTextCharFormat() tcf.setFontFamily("隶书") tcf.setFontItalic(True) tcf.setFontPointSize(20) tbf.setAlignment(Qt.AlignRight)#对齐 tbf.setRightMargin(100) tc.insertBlock(tbf,tcf) self.te.setFocus()#焦点 returnNone #创建或插入添加表格 tc=self.te.textCursor() ttf=QTextTableFormat() ttf.setAlignment(Qt.AlignRight) ttf.setCellPadding(6) ttf.setCellSpacing(13) ttf.setColumnWidthConstraints((QTextLength(QTextLength.PercentageLength,50),QTextLength(QTextLength.PercentageLength,40),QTextLength(QTextLength.PercentageLength,10)))#单元格长度比例 table=tc.insertTable(5,3,ttf) table.appendColumns(2) returnNone #设置对齐 tc=self.te.textCursor() #tl=tc.insertList(QTextListFormat.ListCircle) #tl=tc.insertList(QTectListFormat.ListDecimal) #tl=tc.createList(QTextListFormat.ListDecimal) tlf=QTextListFormat() tlf.setIndent(3) tlf.setNumberPrefix("<<") tlf.setNumberSuffix("<<") tlf.setStyle(QTextListFormat.ListDecimal) tl=tc.createList(tlf) QTextList returnNone #插入普通文本或者富文本 tc=self.te.textCursor() tdf=QTextDocumentFragment.fromHtml("xxx
") #tdf=QTextDocumentFragment.fromPlainText("xxx
") tc.insertFragment(tdf) returnNone #插入图片 tc=self.te.textCursor() tif=QTextImageFormat() tif.setName("D:\ICO\ooopic_1517621187.ico") tif.setWidth(100) tif.setHeight(100) tc.insertImage("D:\ICO\mmmmm.JPG") returnNone #插入接 QTextCursor tcf=QTextCharFormat() tcf.setToolTip("撩课学院网址") tcf.setFontFamily("隶书") tcf.setFontPointSize(12) tc=self.te.textCursor() tc.insertText("itlike.com",tcf) tc.insertHtml("撩课") if__name__=="__main__": App=QApplication(sys.argv) Win=Window() Win.show() sys.exit(App.exec_())
到此这篇关于pyqt5textEdit、lineEdit操作的示例代码的文章就介绍到这了,更多相关pyqt5textEdit、lineEdit操作内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。