Closed vczh closed 2 years ago
但是这样 窗口不居中了
我觉得应该在att.BoundsComposition-set上操作 毕竟你这个属性就是为了做大小操作的
而且,我这边用你这种写法的话,往小拉伸的话会抖动。
大佬 这块为什么要加 window->Convert转换 这样展示出来的比我设置的像素值要大
我添加了个flexlayout布局 依赖 facebook的yoga https://github.com/facebook/yoga.git 不知道大佬需要不
这是使用 我可以提供使用demo
里面的逻辑是这样的,不管你dpi是多少,composition的尺寸都是逻辑像素,所以在那个地方要乘以dpi算出windows api需要的尺寸。你可以看到我Size有两个不同的struct,其中NativeSize就是dpi相关的,125%的话Convert就是乘以1.25取整。当然我还有另一个重载用来除。
这就是为什么我说PreferredMinSize要在container而不是bounds上改,因为你那个做法跟皮肤的实现是耦合的,换个皮肤可能就寄了。不过现在是有bug没办法。
我还是得把这个修了,让container的PreferredMinSize不会抖动,才能把故事说完整。
yoga的demo挺好的耶,你要不先放单独的repo,做完了我去看看?
好的好的👌
我看winui3设置窗口大小,该多大就多大,比如400×400,显示的就400×400,你这个的话显示出来的就大于400了
恩,这个设置的都是逻辑尺寸,DPI变大结果就会变大了。如果你想设置真实尺寸的话,可以调用INativeWindow
的函数改窗口大小。
这个我也关掉了,有什么问题可以在 https://github.com/vczh-libraries/GacUI/issues/77 继续讨论。居中的问题应该也没有了。
好的
From
to
ContainerComposition