Функция выделения текста в QLineEdit
Как сделать так, чтобы по нажатию на кнопку "Rename" предлагалось изменить текст надписи в окне?
Ответы (1 шт):
Автор решения: S. Nick
→ Ссылка
Код надо публиковать в теле вопроса. У меня нет доступа к вашему коду, но я вам покажу как это можно реализовать.
void QLineEdit::selectAll()
Выделяет весь текст (т.е. выделяет его) и перемещает курсор в конец.
Это полезно, когда было вставлено значение по умолчанию, потому что, если пользователь введет текст до нажатия на виджет, выделенный текст будет удален.
import sys
from PyQt5 import QtCore, QtGui, QtWidgets
from PyQt5.Qt import *
class MainWindow(QMainWindow):
def __init__(self):
super().__init__()
self.centralWidget = QtWidgets.QWidget()
self.setCentralWidget(self.centralWidget)
self.lineEdit = QLineEdit('Имя')
self.pushButton = QPushButton('PushButton_Rename')
self.pushButton.clicked.connect(self.on_clicked)
self.gridLayout = QGridLayout(self.centralWidget)
self.gridLayout.addWidget(self.lineEdit, 0, 0)
self.gridLayout.addWidget(self.pushButton, 0, 1)
def on_clicked(self):
self.lineEdit.selectAll()
self.lineEdit.setFocus()
if __name__ == '__main__':
app = QApplication(sys.argv)
w = MainWindow()
w.show()
sys.exit(app.exec())
