zhuzichu520 / FluentUI

FluentUI for QML
MIT License
3.58k stars 472 forks source link

请问一下 qmldir不能使用单例吗?我测试代码然后没有 #108

Open one-rabbit opened 1 year ago

one-rabbit commented 1 year ago

image 它会默认生成这个qmldir但是里面没有任何的单例,即使我添加了 singleton,依旧会被冲掉。 请问一下博主如何解决这种问题 和 有没有cmake qmldir的例子?

zhuzichu520 commented 1 year ago

根据我查文档,只需在CMakeList.txt 添加如下代码即可将QML变成单例

set_source_files_properties(FunnySingleton.qml PROPERTIES
     QT_QML_SINGLETON_TYPE TRUE
 )

你可以在QtCreator帮助中搜索关键字qt_target_qml_sources,查看详细文档

zhuzichu520 commented 1 year ago

当然,你的QML文件中还是要有pragma Singleton

one-rabbit commented 1 year ago

感谢 我查到了,但是我发现很多时候不能 识别到model 而且我测试在我添加了 IMPORT_PATH 后仍然不行。运行没有问题,但是识别不了 我就没法快捷使用;有没有好的解决方案呢 image

zhuzichu520 commented 1 year ago

点击工具->QML/JS->重置代码模型

one-rabbit commented 1 year ago

博主 我测试了一下,当我不使用cmake自动生成的 qmldir,使用手动的qmldir。发现重置代码模型其实也识别不了 对应的qmldir; 但是能够成功运行。 还有个问题,我想请教一下,当我使用cmake的自动生成后,如果遇到同名文件怎么办?

zhuzichu520 commented 1 year ago

能运行成功的的话qmldir应该没错。你可以尝试重启一下QtCreator试试。怎么会出现同名呢。同名的话估计会报错吧。。

one-rabbit commented 1 year ago

我的意思是 我需要同名的文件;所以可能自动生成会出现问题