快速问题:
我用PYQT编写代码,我对Tkinter不感兴趣,直到我发现它是canvas。我正在制作一个2D动画应用程序,我需要画布,但我也想在PYQT中完成。
我很想从tkinter抓取画布,并将其作为我的pyqt小部件的父对象。
任何信息都可以,或者链接到在pyqt中制作画布的教程,因为我自己在大量的搜索后还没有找到任何东西。我在pygame中半制作了一个,但也不能将它放入PYQT中。
发布于 2012-06-15 12:55:06
如果这是Qt,即使在Python上,您也可以子类化QWidget,重新实现paintEvent并使用QPainter进行绘制。从这个意义上说,任何小部件都是画布(但paintEvent是受保护的)。
发布于 2018-06-21 05:05:45
Tkinter和Qt是完全不同的框架,你不能将Tkinter小部件集成到Qt窗口中。然而,Qt有用于绘制东西的解决方案。
如果你是PyQt的新手,我强烈推荐this tutorial。有一章是关于基础绘画的。在此之后,您可以开始阅读this documentation。这是python的文档,但是您仍然可以将其应用于PyQt,因为C++中的Qt类具有相同的方法和属性:)您只需使c++语法适应python。你甚至可以找到教程there。
当您对PyQt足够熟悉时,您可以研究一下绘画:我认为您可以使用paint on a widget (如果您没有太多要绘制的项目)或使用GraphicsView architecture (更复杂,但更适合绘图)。这两种方法都比TKinter画布要困难一些,因为Qt是一个很大的框架,有很多选项。
祝你好运:)
https://stackoverflow.com/questions/11044348
复制相似问题