/ / क्यूटी - सापेक्ष माउस स्थिति सेटिंग - क्यूटी

क्यूटी - सेटिंग सापेक्ष माउस स्थिति - क्यूटी

मैं अपने ग्राफिक्स इंजन को फ्रीग्लूट से क्यूटी तक ले जा रहा हूं। मेरी खिड़की वर्ग QWindow से विरासत में मिलता है। मुझे विंडो के केंद्र में सापेक्ष माउस स्थिति सेट करने और कर्सर को छिपाने में समस्या है। फ्रीग्लूट में कोड इस तरह दिखता है:

glutWarpPointer((glutGet(GLUT_WINDOW_WIDTH) / 2), (glutGet(GLUT_WINDOW_HEIGHT) / 2));
glutSetCursor(GLUT_CURSOR_NONE);

मैं ऐसा कुछ करने की कोशिश कर रहा था:

this->cursor().setPos((width() / 2), (height() / 2)); // this seems to set an absolute (global) position
this->cursor().setShape(Qt::BlankCursor); // doesn"t work

इसे कैसे प्राप्त करें?

उत्तर:

उत्तर № 1 के लिए 10

आपके कोड का कोई प्रभाव नहीं है, क्योंकि आप एक अस्थायी प्रतिलिपि संपादित कर रहे हैं।
हस्ताक्षर को देखो: QCursor QWidget::cursor() const। कर्सर ऑब्जेक्ट मूल्य से वापस कर दिया जाता है। कर्सर परिवर्तनों को लागू करने के लिए, आपको संशोधित ऑब्जेक्ट को वापस पास करना होगा setCursor()। स्थानीय से वैश्विक समन्वय में मानचित्र करने के लिए, उपयोग करें mapToGlobal():

QCursor c = cursor();
c.setPos(mapToGlobal(QPoint(width() / 2, height() / 2)));
c.setShape(Qt::BlankCursor);
setCursor(c);