QT在嵌入式Linux环境下运行

2014-11-24 03:27:14 · 作者: · 浏览: 2

运行嵌入式程序

在嵌入式QT版本中,程序需要服务器或自己作为服务器程序。服务器程序构造的方法是构造一个QApplication::GuiServe类型的QApplication对象。或者使用-qws命令选项启动程序。


Using a Single Display
使用-qws选项
接下来的程序可以当做客户端来运行,只要不使用-qws选项。那么客户端程序就会自动连接到服务程序中。


using Mutiple Displays
嵌入式版本中运行多个县市同时运行。两种方式可以实现,要么多次运行服务程序,要么使用read-mae Multi screen driver
当多个服务程序运行时,每个程序必须使用-display选项指定显示驱动,或者使用QWS_DISPLAY环境变量来指定。
服务程序运行时:
./mysecondserverapplication -qws -display "QVFb:2"
客户程序运行时:
./myclientapplication -display "QVFb:2"


若想在不同显示器移动应用程序,则只能通过Muti显示器实现。
./myserverapplication -qws -display "Multi: QVFb:0
QVFb:1:offset=0,0 VNC:offset=640,0 :2"


程序启动命令选项:
-fn 定义程序的字体,例如./myapplication -fn helvetica


-bg 设置程序默认背景颜色 例如./myapplication -bg blue,颜色名称必须能被QColor类构造函数识别


-btn 设置默认的按钮颜色,例如./myapplication -btn green 同样颜色必须被认识


-fg 设置foreground颜色,例如./myapplication -fg 'dark blue' 同上需被认识


-name 设置应用程序名字 例如./myapplication -name texteditapplication


-title 设置应用程序标题。./myapplication -title 'Text Edit'</p><div class="article-middle-ad" style="margin: 30px 0; padding: 20px 0; text-align: center; clear: both;"> <script async src="https://pagead2.googlesyndication.com/pagead/js/adsbygoogle.js?client=ca-pub-3873923678443673" crossorigin="anonymous"></script> <!-- cppentry文章内广告 --> <ins class="adsbygoogle" style="display:block" data-ad-client="ca-pub-3873923678443673" data-ad-slot="5723320063" data-ad-format="auto" data-full-width-responsive="true"></ins> <script> (adsbygoogle = window.adsbygoogle || []).push({}); </script> </div><br/><p>-geometry <width>x<height>+<Xoffset>+<Yoffset><br />设置窗口大小, ./myapplication -geometry 300x200+50+50</p><br/><p>-keyboard 启动键盘</p><br/><p>-nokeyboard 关闭键盘</p><br/><p>-mouse 启动鼠标</p><br/><p>-nomouse 关闭鼠标</p><br/><p>-qws 设置为服务程序</p><br/><p>-display 设置显示器驱动</p><br/><p>-decoration<style><br />设置程序的风格,例如./myapplication -decoration windows,只支持windows default styled</p><br/></span> </div> <div class="pagination mt-40"> </div> <div class="article-footer mt-60 pt-40"> <div class="share-box"> <!-- Baidu Share Code Simplified or Removed if not needed. Keeping basic structure --> <div class="bdsharebuttonbox"><a href="#" class="bds_more" data-cmd="more"></a><a href="#" class="bds_qzone" data-cmd="qzone" title="分享到QQ空间"></a><a href="#" class="bds_tsina" data-cmd="tsina" title="分享到新浪微博"></a><a href="#" class="bds_tqq" data-cmd="tqq" title="分享到腾讯微博"></a><a href="#" class="bds_renren" data-cmd="renren" title="分享到人人网"></a><a href="#" class="bds_weixin" data-cmd="weixin" title="分享到微信"></a></div> <script>window._bd_share_config={"common":{"bdSnsKey":{},"bdText":"","bdMini":"2","bdMiniList":false,"bdPic":"","bdStyle":"0","bdSize":"24"},"share":{}};with(document)0[(getElementsByTagName('head')[0]||body).appendChild(createElement('script')).src='http://bdimg.share.baidu.com/static/api/js/share.js?v=89860593.js?cdnversion='+~(-new Date()/36e5)];</script> </div> <div class="prev-next mt-20"> <div class="prev"> <span class="label">上一篇</span> <a href="bencandy.php?fid=54&id=41822" onclick="" class="link">Android ProgressDialog自定义方法</a> </div> <div class="next"> <span class="label">下一篇</span> <a href="bencandy.php?fid=54&id=41820" onclick="" class="link">编译Linux2.6.x内核步骤及注意事项</a> </div> </div> </div> </div> </div> </div> </div><!-- End .container.main-content --> <footer class="container mt-20 site-footer"> <div id="copyright"> Copyright © https://www.cppentry.com all rights reserved <a href="http://www.miibeian.gov.cn" target="_blank">粤ICP备13067022号-3</a><br> </div> </footer> <script> // Logic for double click admin editing </script> <script> if(typeof clickEdit !== 'undefined') clickEdit.init(); </script> </body> </html>