在 PyQt5 中,如何将普通的 QLineEdit(文本框)转换为完美的大写/大写 QLineEdit 框?

In PyQt5, How to convert normal QLineEdit (textbox) becomes a perfect Capitalize / UpperCase QLineEdit Box?(在 PyQt5 中,如何将普通的 QLineEdit(文本框)转换为完美的大写/大写 QLineEdit 框?)
本文介绍了在 PyQt5 中,如何将普通的 QLineEdit(文本框)转换为完美的大写/大写 QLineEdit 框?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着跟版网的小编来一起学习吧!

问题描述

如何在入门级将我的 QLineEdit 转换为大写或全部大写?

How to convert My QLineEdit into a Capitalize or all upper Case at Entry Level ?

(如果我在我的文本框(QLineEdit)中输入字符串,它会根据用户定义的方法自动将输入字符串转换或格式化.(大写或大写))

( If I enter string into my text box (QLineEdit), automatically its converts or format the input string to, as per user defined method. ( Capitalize or Upper Case ))

import sys
from PyQt5.QtWidgets import *
from PyQt5.QtGui import *


class textbox_example(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle(" QLine Edit Example")
        self.setGeometry(50, 50, 1500, 600)

        self.tbx_search = QLineEdit(self)
        self.tbx_search.setGeometry(50, 50, 300, 30)
        self.tbx_search.setPlaceholderText("Enter,Name of the Company")
        self.tbx_search.setFont(QFont("caliber", 10, QFont.Capitalize))

def main():
    myapp = QApplication(sys.argv)
    mywindow = textbox_example()
    mywindow.show()
    sys.exit(myapp.exec_())


if __name__ == "__main__":
    main()

如果我输入公司名称为google inc",则其转换如下Google Inc".

If I enter a name of the company as "google inc" then its converts as follows " Google Inc" .

推荐答案

以下代码对我来说很好.我也是 PyQt5 和 Python 的新手.所以如果你能让这个更pythonic,请告诉我

The following code works to me fine. I am also new to PyQt5 and Python. so if you can make this more pythonic please let me know

import sys
from PyQt5.QtWidgets import *

class textbox_example(QWidget):
    def __init__(self):
        super().__init__()
        self.setWindowTitle(" QLine Edit Example")
        self.setGeometry(50, 50, 1500, 600)

        self.tbx_search = QLineEdit(self)
        self.tbx_search.setGeometry(50, 50, 300, 30)
        self.tbx_search.setPlaceholderText("Enter,Name of the Company")
        self.tbx_search.textChanged.connect(self.auto_capital)

    def auto_capital(self, txt):
        cap_text = txt.title()  
        upp_text = txt.upper()  # All Upper Case
        self.tbx_search.setText(cap_text)

def main():
    myapp = QApplication(sys.argv)
    mywindow = textbox_example()
    mywindow.show()
    sys.exit(myapp.exec_())

if __name__ == "__main__":
    main()

这篇关于在 PyQt5 中,如何将普通的 QLineEdit(文本框)转换为完美的大写/大写 QLineEdit 框?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!

本站部分内容来源互联网,如果有图片或者内容侵犯了您的权益,请联系我们,我们会在确认后第一时间进行删除!

相关文档推荐

Multiprocessing on Windows breaks(Windows 上的多处理中断)
How to use a generator as an iterable with Multiprocessing map function(如何将生成器用作具有多处理映射功能的可迭代对象)
read multiple files using multiprocessing(使用多处理读取多个文件)
Why does importing module in #39;__main__#39; not allow multiprocessig to use module?(为什么在__main__中导入模块不允许multiprocessig使用模块?)
Trouble using a lock with multiprocessing.Pool: pickling error(使用带有 multiprocessing.Pool 的锁时遇到问题:酸洗错误)
Python sharing a dictionary between parallel processes(Python 在并行进程之间共享字典)