• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>

            eryar

            PipeCAD - Plant Piping Design Software.
            RvmTranslator - Translate AVEVA RVM to OBJ, glTF, etc.
            posts - 603, comments - 590, trackbacks - 0, articles - 0

            Modify Branding of FreeCAD

            Posted on 2016-05-09 22:18 eryar 閱讀(1479) 評(píng)論(2)  編輯 收藏 引用

            Modify Branding of FreeCAD

            eryar@163.com

            This article describes the Branding of FreeCAD. Branding means to start your own application based on FreeCAD. That can be only your own executable or splash screen till a complete reworked program. Based on the flexible architecture of FreeCAD it’s easy to use it as base for your own special purpose program.

            本文主要描述如何修改FreeCAD的Branding,從而使自己能基于FreeCAD靈活的架構(gòu)快速開發(fā)出自己的應(yīng)用程序。通過修改FreeCAD的Branding甚至啟動(dòng)畫面,從而使程序看上去更像是自己開發(fā)的。

            Branding信息主要在文件MainCmd.cpp和MainGrui.cpp中,這兩個(gè)工程生成了FreeCAD可執(zhí)行文件。

            wps_clip_image-13903

            可以通過修改相關(guān)字符串,可以給可執(zhí)行程序一個(gè)自己的名字,或者版本信息等的自定義,還有啟動(dòng)畫面的自定義。

             

            int main( int argc, char ** argv )
             {
               
            // Name and Version of the Application
               App::Application::Config()["ExeName"= "FooApp";
               App::Application::Config()[
            "ExeVersion"= "0.7";
             
               
            // set the banner (for loging and console)
               App::Application::Config()["CopyrightInfo"= sBanner;
               App::Application::Config()[
            "AppIcon"= "FooAppIcon";
               App::Application::Config()[
            "SplashScreen"= "FooAppSplasher";
               App::Application::Config()[
            "StartWorkbench"= "Part design";
               App::Application::Config()[
            "HiddenDockWindow"= "Property editor";
               App::Application::Config()[
            "SplashAlignment" ] = "Bottom|Left";
               App::Application::Config()[
            "SplashTextColor" ] = "#000000"// black
             
               
            // Inits the Application 
               App::Application::Config()["RunMode"= "Gui";
               App::Application::init(argc,argv);
             
               Gui::BitmapFactory().addXPM(
            "FooAppSplasher", ( const char** ) splash_screen);
             
               Gui::Application::initApplication();
               Gui::Application::runApplication();
               App::Application::destruct();
             
               
            return 0;
             }

            圖片數(shù)據(jù)通過使用Qt的資源系統(tǒng)來編譯到FreeCAD中去的。所以你需要寫一個(gè).qrc文件,將資源加到這個(gè)類似XML的qrc文件中。在程序中使用資源,需要在main()中添加下面一行:

            Q_INIT_RESOURCE(FooApp); 

            如果你有XPM格式的圖片,則可以直接使用:

            Gui::BitmapFactory().addXPM("FooAppSplasher", ( const char** ) splash_screen); 

            改后效果如下圖所示:

            wps_clip_image-1054

            Feedback

            # re: Modify Branding of FreeCAD  回復(fù)  更多評(píng)論   

            2016-08-05 13:46 by 啦啦啦
            請(qǐng)教一下, App::Application::Config()["ExeName"] = "FreeCAD中文名";中文字符,會(huì)亂碼,這個(gè)要怎么解決了?

            # re: Modify Branding of FreeCAD  回復(fù)  更多評(píng)論   

            2016-08-05 19:18 by eryar
            @啦啦啦
            static std::map<std::string,std::string> &Config(void){return mConfig;}
            這個(gè)用的是std::string,涉及到編碼問題了。

            只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
            網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理


            久久精品日日躁夜夜躁欧美| 久久亚洲精品无码观看不卡| 久久福利片| 99久久婷婷国产综合亚洲| 欧美日韩中文字幕久久久不卡| 久久精品视频网| 99精品久久久久久久婷婷| 精品人妻伦九区久久AAA片69| 久久久久18| 国产精品久久久久久久久软件| 91久久精品视频| 久久精品国产只有精品66| 精品综合久久久久久97超人| 狠狠精品久久久无码中文字幕 | 四虎亚洲国产成人久久精品| 国产成人香蕉久久久久| 亚洲综合精品香蕉久久网97| 免费观看久久精彩视频| 国产精品一久久香蕉国产线看| 99久久无色码中文字幕| 久久久久久狠狠丁香| 综合久久一区二区三区 | 亚洲午夜久久久久久久久久| 欧美精品国产综合久久| 99久久精品免费看国产一区二区三区 | 久久噜噜电影你懂的| 久久777国产线看观看精品| 久久99精品国产麻豆不卡| 久久久免费观成人影院| 久久精品国产亚洲av水果派| 蜜臀av性久久久久蜜臀aⅴ麻豆 | 性做久久久久久久久老女人| 欧美午夜A∨大片久久| 国产精品免费看久久久| 国产99久久九九精品无码| 成人综合久久精品色婷婷| 亚洲精品乱码久久久久久| 久久天天躁狠狠躁夜夜不卡| 久久精品成人欧美大片| 久久久久久噜噜精品免费直播| 伊人伊成久久人综合网777|