使用 QTableView (QT5) 的数独 GUI
Sudoku GUI using QTableView (QT5)
我正在尝试为数独创建一个 GUI(以提高我的 QT5 技能)。我已决定将 QTableView 用于这些目的。在那之前没有问题。
现在我想绘制网格以使 3x3 字段更加可见。有什么想法,我该怎么做?
我真的建议不要为此使用 QTableView
,它可能可以通过使用委托(主要用于数据表示)来解决,但这会非常棘手。最好的解决方案是通过子classing QWidget
构建自定义小部件,构建paintEvent
功能并放置数据模型。我知道构建自定义小部件听起来肯定更难,但实际上很简单。
这里有一些很好的入门资源:
- http://www.informit.com/articles/article.aspx?p=1405227
- http://zetcode.com/gui/qt4/customwidget/
- http://qt.developpez.com/doc/4.7/designer-customwidgetplugin/
- http://qt.developpez.com/tutoriels/braindeadbzh/customwindow/
之后 QPainter
class 参考资料将对您实现绘图命令非常有用。
我正在尝试为数独创建一个 GUI(以提高我的 QT5 技能)。我已决定将 QTableView 用于这些目的。在那之前没有问题。
现在我想绘制网格以使 3x3 字段更加可见。有什么想法,我该怎么做?
我真的建议不要为此使用 QTableView
,它可能可以通过使用委托(主要用于数据表示)来解决,但这会非常棘手。最好的解决方案是通过子classing QWidget
构建自定义小部件,构建paintEvent
功能并放置数据模型。我知道构建自定义小部件听起来肯定更难,但实际上很简单。
这里有一些很好的入门资源:
- http://www.informit.com/articles/article.aspx?p=1405227
- http://zetcode.com/gui/qt4/customwidget/
- http://qt.developpez.com/doc/4.7/designer-customwidgetplugin/
- http://qt.developpez.com/tutoriels/braindeadbzh/customwindow/
之后 QPainter
class 参考资料将对您实现绘图命令非常有用。