Dalam Qt, komunikasi antara C dan QML boleh dicapai dengan menyambungkan isyarat C ke slot QML. Semasa menghantar parameter jenis primitif berfungsi dengan lancar, menghantar isyarat dengan jenis kompleks seperti QString boleh mengakibatkan ralat.
Untuk menyambung isyarat yang membawa QString ke slot QML, standard kaedah sambungan objek-ke-objek menggunakan QObject::connect() mungkin tidak mencukupi. Sebaliknya, gunakan Sambungan Qt untuk mewujudkan pautan.
Prosedur:
<code class="cpp">qmlVectorForm->rootContext()->setContextProperty("YourObject", myOb);</code>
<code class="cpp">finishedGatheringDataForItem(QString signalString)</code>
<code class="qml">Connections { target: YourObject onFinishedGatheringDataForItem: { qmlString = signalString } }</code>
Ini akan mewujudkan sambungan antara GatheringDataForItem yang telah siap isyarat dalam C dan pengendali onFinishedGatheringDataForItem dalam QML, membolehkan anda mengendalikan parameter QString dengan berkesan.
Atas ialah kandungan terperinci Bagaimana untuk Menyambung Isyarat C dengan Parameter QString ke Slot QML?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!