Уведомления

Группа в Telegram: @pythonsu

#1 Окт. 28, 2017 20:32:42

invisible
Зарегистрирован: 2017-10-28
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь о графический интерфейс с PyQt5

Привет,
Может кто-нибудь помочь?
Я новичок и сейчас изучаю Python.
Как можно стать рабочая программа с графической интерфейс етого на PyQt5.
Дали мне такую задачу, и я не могу этого сделать.

 number_1 = int(input("Размер шкафа: "))
number_2 = int(input("Количество зазоры: "))
number_3 = int(input("Размер зазоры: "))
number_4 = int(input("Количество дверей: "))
print ("Размер дверь:", (number_1 - number_2 * number_3) // number_4)

Буду очень признателен, если кто-то поможет.

Офлайн

#2 Окт. 29, 2017 07:09:28

invisible
Зарегистрирован: 2017-10-28
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь о графический интерфейс с PyQt5

Эта программа должна рассчитать размеры дверей шкафа.
Вот что я сделал. Думаю, это выглядит так. Прикрепляю файлы проекта.

http://prikachi.com/images.php?images/494/9209494B.jpg




Отредактировано invisible (Окт. 29, 2017 07:16:23)

Прикреплённый файлы:
attachment papka.rar (3,4 KБ)

Офлайн

#3 Окт. 29, 2017 08:31:41

doza_and
От:
Зарегистрирован: 2010-08-15
Сообщения: 4138
Репутация: +  253  -
Профиль   Отправить e-mail  

Помощь о графический интерфейс с PyQt5

invisible
Вот что я сделал. Думаю, это выглядит так. Прикрепляю файлы проекта.
invisible
Буду очень признателен, если кто-то поможет.
Я посмотрел код думаю вам поможет следующее. Вам надо взять Книжку по Питону, Прочитать. Потом Книжку по тому как разрабатывать GUI Прочитать. Потом попрактиковаться. И где-то месяца через два вы легко решите данную задачу. Просто пока у вас похоже нет ни малейшего представления о том что вы делаете. А новомодные средства разработки GUI не сделают из вас программиста.
Простейший рабочий код выглядит так (он на wx но на самом деле разницы никакой):

 import wx
class Frame(wx.Frame):
    def __init__(self):
        super(Frame, self).__init__(None)
        self.SetTitle('Шкаф')
        sizer = wx.BoxSizer(wx.VERTICAL)
        args=["Размер шкаф","Брой фуги","Размер фуга","Брой врати","результат"]
        self.ctrl = []
        for nm in args:
            sizer.Add(wx.StaticText(self, label=nm))
            obj = wx.TextCtrl(self,value="0")
            obj.Bind(wx.EVT_TEXT_ENTER,self.update)
            self.ctrl.append(obj)
            sizer.Add(obj,flag=wx.EXPAND)
        self.Center()
        self.Layout()
        self.SetSizer(sizer)
    def update(self,evt):
        sum=0
        for i in self.ctrl[:-1]:
            sum+=float(i.GetValue())
        self.ctrl[-1].SetValue(str(sum))
app = wx.App(False)
frame = Frame()
frame.Show()
app.MainLoop()

Методом копипаста вы ничего не сделаете, поскольку вам надо будет модифицировать код под себя, а для этого надо понимать основы.



Офлайн

#4 Окт. 29, 2017 10:20:57

py.user.next
От:
Зарегистрирован: 2010-04-29
Сообщения: 10003
Репутация: +  857  -
Профиль   Отправить e-mail  

Помощь о графический интерфейс с PyQt5

invisible
 number_4 = int(input("Количество дверей: "))
print ("Размер дверь:", (number_1 - number_2 * number_3) // number_4)
Вместо input() надо брать значение из поля формы, а вместо print() нужно устанавливать значение в поле формы. Это делается через методы .value() или .text() и .setValue() или .setText() у полей. Всё происходит по сигналу от кнопки, привязанному к слоту с вычислениями для полей.
Простые примеры привязывания кнопок к полям можешь найти на zetcode.com .



Офлайн

#5 Окт. 29, 2017 15:03:34

invisible
Зарегистрирован: 2017-10-28
Сообщения: 3
Репутация: +  0  -
Профиль   Отправить e-mail  

Помощь о графический интерфейс с PyQt5

doza_and
Я посмотрел код думаю вам поможет следующее. Вам надо взять Книжку по Питону, Прочитать. Потом Книжку по тому как разрабатывать GUI Прочитать. Потом попрактиковаться. И где-то месяца через два вы легко решите данную задачу. Просто пока у вас похоже нет ни малейшего представления о том что вы делаете. А новомодные средства разработки GUI не сделают из вас программиста.
Простейший рабочий код выглядит так (он на wx но на самом деле разницы никакой):

Спасибо вам.

Мне нужен простой пример. Вашего примера очен сложной.

Вместо input() надо брать значение из поля формы, а вместо print() нужно устанавливать значение в поле формы. Это делается через методы .value() или .text() и .setValue() или .setText() у полей. Всё происходит по сигналу от кнопки, привязанному к слоту с вычислениями для полей.
Простые примеры привязывания кнопок к полям можешь найти на zetcode.com .

Я посмотрю ссылку.

Отредактировано invisible (Окт. 29, 2017 15:28:56)

Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version