Название: PyQt5. Новичок Отправлено: ILya от Март 03, 2020, 19:15 Код
Здравствуйте! Python. PyQt5. Помогите. Начал изучение Qt. У меня будет окно и там несколько строк, куда нужно будет вводить цифры(пользователь будет вводить) 1) Какую лучше выбирать для этого? (Text edit, line edit....) 2) Как мне забрать эти данные? То есть, пользователь ввел в Textedit_2 число 500 И я хочу, чтобы переменная P = Textedit_2. Так как после идут формулы какие то U = P/2 3)И нужно в другую строчку напечатать переменную U (то есть ответ напечатать) Читал смотре, но что то не понял, как это сделать Название: Re: PyQt. Новичок Отправлено: alexu007 от Март 03, 2020, 20:23 1. Какую нужно исходя из потребностей программы. Название само говорит: TextEdit для текста, LineEdit - для одной строчки, цифры, слова и т.п.
2. Во всех случаях в этих штуках всегда только текст, даже если это 12345. Можно прочитать в строковую переменную и принудительно перевести в цифру: Код
3. Вывести результат можно в метку (label), и в lineEdit, и в textEdit - смотря сколько чего выводить, исходя из потребностей и дизайна программы. В метке просто будет надпись, из эдитов можно выделить мышкой и скопировать содержимое для дальнейшего использования (если надо). В эдитах можно запретить редактирование - использовать только как вывод. По аналогии с вводом выводится текст, цифру нужно предварительно перевести в текст. Делается это так: Код
Впрочем, в метку можно и напрямую выводить цифру методом setNum(): Код
Название: Re: PyQt. Новичок Отправлено: ILya от Март 03, 2020, 21:32 Вы написали на си.
Я питон использую. Правильно ли я понял назначение. ui->lineEdit->Text() (просто обращение к файлу и к строке). PyQt5 не знает про это или что то не то QString str = QString(self.textEdit_3.Text()) self.textEdit_2.Text(str) str = self.textEdit_3.Text() self.textEdit_2.Text(str) Набираю текст и нажимаю ОК, он просто закрывает программу. Делал print(str), он не печатает это в командной строке даже Название: Re: PyQt. Новичок Отправлено: Igors от Март 04, 2020, 08:01 Читал смотре, А я вижу что "не чита" и "не смотре" str = QString(self.textEdit_3.Text()) text (а не Text). А чтобы установить setText. Впечатление что доку Вы даже не открывалиself.textEdit_2.Text(str) str = self.textEdit_3.Text() self.textEdit_2.Text(str) Делал print(str), он не печатает это в командной строке даже Ну так printf в "С" тоже не будет печатать QString, это же класс. Попробуйте print(unicode(str)) Вы не первый и не последний кто пытается использовать "форум вместо букваря" :) Не стоит, из этого ничего хорошего никогда не выходит |