سؤال

لدي "صفحة ابدأ" في طلبي هذا مجرد QWebView القطعة التي تقوم بتنزيل صفحة من الخادم الخاص بي.

عندما ينقر المستخدم على رابط، أود فتحه في متصفحه الافتراضي، وليس في القطعة.

هل هناك طريقة للقيام بذلك مع QWebViewب أو يجب أن تأخذ نهج مختلف؟

هل كانت مفيدة؟

المحلول

ما عليك سوى الاتصال QWEBPAGE :: SetLinkDelegationPolicy (QWEBPAGE :: TEVEMATEALLLINKS) ثم قم بتوصيل إشارة QWebView :: LinkClicked (CONST QURL & URL) إلى فتحة، وفي الفتحة تنفذ المتصفح. معرفة ما هو المتصفح الافتراضي، هو أكثر تعقيدا قليلا وتعتمد على سطح المكتب الذي يعمل المستخدم. يتضمن متصفح متغير البيئة غالبا الافتراضي.

او استعمل Qdesktopservices :: Openurl. كما اقترحها جنود في تعليق

نصائح أخرى

على افتراض الروابط الخارجية، يمكنك فقط الاتصال QWebView :: setopenexternallinks (صحيح) على القطعة QWebView الخاصة بك. الخاصية خطأ بشكل افتراضي؛ إعداده إلى True يؤدي إلى فتح روابط خارجية في متصفح الويب الافتراضي الخاص بك.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top