0

快速提问:

我在 PYQT 中编码,我对 Tkinter 不感兴趣,直到我发现它的画布。我正在制作一个 2D 动画应用程序,我需要画布,但我也想在 PYQT 中完成。

我很想从 tkinter 中获取画布并将其作为父级放入我的 pyqt 小部件中。

任何信息都会很棒,或者是指向在 pyqt 中制作画布的教程的链接,因为经过大量搜索后我自己没有找到任何信息。我在 pygame 中半制作了一个,但也无法将其作为 PYQT 的父项。

4

2 回答 2

0

如果这是 Qt,即使在 Python 上,您也可以继承 QWidget,重新实现 paintEvent 并使用 QPainter 进行绘制。从这个意义上说,任何小部件都是画布(但 paintEvent 是受保护的。)

于 2012-06-15T04:55:05.680 回答
0

Tkinter 和 Qt 是完全不同的框架,您不能将 Tkinter 小部件集成到 Qt 窗口中。然而,Qt 有绘图的解决方案。

如果你是 PyQt 的新手,我强烈推荐这个教程。有一章是关于基础绘画的。之后,您就可以开始阅读本文档了。这是 C++ Qt 的文档,但您仍然可以将其应用于 PyQt,因为 python 中的 Qt 类具有相同的方法和属性 :) 您只需将 c++ 语法调整为 python。您甚至可以在那里找到教程。

当您对 PyQt 足够熟悉时,您可以研究绘画:我认为您可以在小部件上绘画(如果您没有很多要绘画的项目)或使用GraphicsView 架构(更复杂但更适合绘画) . 这两种方式都将比 TKinter 画布更难一些,因为 Qt 是一个大框架并且有很多选择。

祝你好运 :)

于 2018-06-20T21:05:44.800 回答