Latest posts on создание динамической(движущейся) кнопки topichttp://python.su/forum/topic/37088/2019-04-16T22:29:21+03:00Общий :: GUI :: создание динамической(движущейся) кнопки
2019-04-16T22:29:21+03:00doza_and200830<blockquote><em>BOBAH</em><br/>такой же функционал, не изобретая велосипед???</blockquote>А где тут велосипед? Вполне разумно сделано. Бегающие кнопки обычно никому не нужны, поэтому делаются не очень просто. Можно посмотреть pygame Но будет не сильно меньше.
Общий :: GUI :: создание динамической(движущейся) кнопки
2019-04-16T14:27:55+03:00BOBAH200824Есть ли возможность создать такой же функционал, не изобретая велосипед???<br/><div class="code"><pre>import wx<br/>from time import sleep<br/>from threading import Thread<br/><br/>class MyApp(wx.Frame):<br/> def __init__(self):<br/> self.speed_change = 50<br/> self.speed_move = 1 #коэффициент скорости перемещения объектов по умолчанию 1<br/><br/> super().__init__(None, -1,<br/> title='test',<br/> size=(800, 600),<br/> style=wx.RESIZE_BORDER| wx.CAPTION |<br/> wx.CLOSE_BOX)<br/><br/>#--------------------------------------------------------------------------------<br/> self.Center()<br/> self.Show()<br/><br/># --------------------------------------------------------------------------------<br/> self.but = wx.Button(self, 1,<br/> label='≡',<br/> style=wx.FONTENCODING_UTF8,<br/> size=(30, 30),<br/> pos=(0, 0))<br/><br/># --------------------------------------------------------------------------------<br/> self.but.Bind(wx.wx.EVT_MOTION, self.OnClicked)<br/><br/> def OnClicked(self, event):<br/> Thread(target=self.Move_but).start()<br/><br/><br/> def Move_but(self):<br/> for i in range(50):<br/> self.but.Move((abs((i + self.speed_change) * 2)), 0)<br/> sleep(0.003 * self.speed_move)<br/><br/> self.speed_change *= -1<br/><br/>if __name__ == '__main__':<br/> App = wx.App()<br/> MyApp()<br/> App.MainLoop()</pre></div>