Форум сайта python.su
0
Всем доброго времени суток! По долгу профессии появилась необходимость написать скрипт для рабочей программы на ironpython. Сам я не программист, но что то вроде понимаю
К делу. Ниже часть скрипта, это формы windows. Первая функция по вызову создает заданное количество Combobox-ов, и мне нужно, чтобы при выборе какого либо пункта в combobox под ним появлялось соответствующее изображение. Проблема в том, что в данный момент создаваемый PictureBox является дочерним для самой формы, насколько я понимаю (pb.Parent = self). И создаваемые изображения никак не привязаны к своим комбобоксам. Надеюсь понятно выразился) Необходимо, чтобы создаваемый PictureBox наследовал расположение от своего Combobox, таким образом можно будет не управлять координатами каждой картинки, просто задать относительно родительского объекта. Не нашел подобной информации, уже не один час потратил( Буду признателен за помощь
def cashupdate(self,sender,event):
self.CashLen = sender.Text
self.CashLen = int(self.CashLen)
n = self.CashLen/500
z = 150
for i in range(n):
cb = ComboBox()
cb.Parent = self
cb.Width = 120
cb.Location = Point(20+(z*i), 300)
cb.Items.AddRange(("Модуль №1",
"Модуль №2","Модуль №3","Модуль №4"))
cb.SelectedValueChanged += self.Module
def Module(self, sender, event):
im = sender.Text
pathm1 = "C:\\Dodo\module1.png"
pathm2 = "C:\\Dodo\module2.png"
pathm3 = "C:\\Dodo\module3.png"
pathm4 = "C:\\Dodo\module4.png"
if im == "Модуль №1":
img = Bitmap.FromFile(pathm1)
z = 20
elif im == "Модуль №2":
img = Bitmap.FromFile(pathm2)
z = 170
elif im == "Модуль №3":
img = Bitmap.FromFile(pathm3)
z = 290
elif im == "Модуль №4":
img = Bitmap.FromFile(pathm4)
z = 410
pb = PictureBox()
pb.Parent = self
pb.Size = Size(img.Width, img.Height)
pb.Location = Point(20, 20)
pb.Image = img
Офлайн
253
В качестве пассивной помощи могу сообщить следующее:
1. На IronPython на форуме наверное никто не пишет, если только пробегают временно люди.
2. Народ Если и пишет GUI то в Qt, Tkinter, wxpython или в web. т.е. даже для самообразования небудут разбираться с WinForms, поскольку такой скил никому не нужен.
Практические советы, извините они очень банальные:
1. Думаю помощи надо искать на шарповых форумах.
2. Полезно обратиться к автору ПО.
3. Если планируется дальнейшее использование и модификация то полезно переписать ПО на что-то более мейнстримное поскольку Winforms насколько я знаю и микрософт забросил. Если менять ПО то надо тщательней выбирать технологию и команду исполнителей чтобы не остаться у разбитого корыта.
Отредактировано doza_and (Июнь 12, 2018 15:59:42)
Офлайн
0
doza_and, чтож, спасибо)
про qt и tkinter знаю, но, насколько мне известно, наше приложение поддерживает только скрипты на ironpython. Скрипт разовый, до авторов ПО в лице Autodesk, конечно, не достучаться) а вот на форум c# загляну, спасибо!
Офлайн