我使用的是pyqt5.4.2-x64 + python3.4 64bit。 不幸的是QGraphicsTextItem无法改变输入法,在示例/ widgets / graphicsview / digramscene的演示中,QGraphicsTextItem只能接受ascii字符,我不能输入中文。 但是,如果我切换到32位版本,没有问题。 你有解决方案吗?
谢谢!
答案 0 :(得分:0)
您应该调用QGraphicsItem提供的方法,如下所示:
DisplayMetrics metric = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metric);
int width = metric.widthPixels;
int height = metric.heightPixels;
float density = metric.density;
更重要的是,如果您继承自QGraphicsTextItem或其他东西,请覆盖keyReleaseEvent以便将事件传播到父级。通过这种方式,你将完成这项工作。它看起来像这样:
QGraphicsItem::setFlag(QGraphicsItem::ItemAcceptsInputMethod, true);