故事背景:最近在适配uos系统,客户端程序启动初始位置乱跳,并不是我设置的屏幕中间,鼠标拖动失效,一度怀疑自己的代码有问题,开始我们的探险之路吧。。。

 

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

探索之路:后来goolge发现大部分桌面系统是X11,但是这个UOS系统是wayland,通过export或者echo $XDG_SESSION_TYPE查看这个环境变量即可,适配wayland可能还需要改代码。。。

@ubuntu:~$ echo $XDG_SESSION_TYPE 
x11
@ubuntu:~$ 

 

 

解决方案:我带着激动的心情通过添加环境变量的方式试一把,在启动脚本里面添加export QT_QPA_PLATFORM='xcb',居然生效了,因为网上说wayland是另一种桌面系统,适配他的话可能还需要修改代码,所以目前先这么解决吧,有小伙伴熟悉这块的话,可以分享一下,哈哈哈。

 

代码有话说:代码就不写了,在你启动程序的脚本开头加上export QT_QPA_PLATFORM='xcb'即可

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄