本文配套程序下载地址为: http://pan.baidu.com/share/link?shareid=358034&uk=3995556177

界面基本山确定下来,感觉操作起来的确很简单,觉得会有很多人用这个东西,有开发价值。于是开始做详细的技术可行分析。

其实问题就一个,怎么将镜像安装到C盘了。如果这个问题能解决,那么这个软件才可能开发下去。否则就是白搭精力。在解决这个问题的过程中遇到了好多的具体问题,而且平时还要加班,也没有什么时间,所以断断续续花了2个月才解决。估计大家对这个少有感兴趣的,我就略过了。
现在进入了具体实现阶段。
首先需要解决的是界面开发。现在大家对软件的界面要求越来越高。我用mfc还行,但mfc要做出好的界面效果需要太多的工作。wtl也存在这个问题。正好参加一个新的项目,新的项目用direct UI,同事给我展示了一下那个配套的界面设计工具。当时觉得,哇,用direct UI开发界面,界面效果太棒了,而且那个界面设计工具的确很好,拖拖拽拽就可以很快设计一个很炫的界面。可惜他们的那套库是他们自己搞的,虽然免费用,但是不开源,如果出问题那就傻眼了。所以就在网上找找有没有开源的direct UI库。还真找到一个,就是duilib。这个项目现在还在维护,但更新比较少。界面设计工具也不好用,和同事他们搞的那个工具比就差远了。但是还是要感谢duilib开发组。如果没有你们的无私奉献,我或许要花更多的时间写界面代码了。感谢你们。
用dui开发界面对我来说是一个全新的东西,研究了它的几个例子,就拿GameDemo例子开始开发界面了。捣鼓了一下,配置了一个界面xml。先把界面的xml贴出来:

<?xml version="1.0" encoding="utf-8" standalone="yes" ?>
<Window size="1024,576" caption="0,0,0,60">
    <Font name="微软雅黑" size="19" bold="false" italic="false" />
    <Font name="微软雅黑" size="16" bold="false" italic="false" />
    <Font name="微软雅黑" size="14" bold="false" italic="false" />
    <VerticalLayout name="VerticalLayoutUI1" width="427" height="153" bkimage="vistabg.png">
        <Container name="ContainerUITitle" width="1022" height="114">
            <Label name="LabelUIDescription" text="您想安装哪个系统 ?" float="true" pos="141,48,0,0" width="618" height="66" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="0" />
            <Button name="BtnClose" tooltip="退出程序" float="true" pos="976,4,0,0" width="42" height="18" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" normalimage="frame_btn_close_down.bmp" hotimage="frame_btn_close_hot.bmp" />
            <Label name="LabelUI6" text="小妞会装机" float="true" pos="63,18,0,0" width="279" height="23" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="1" />
            <Label name="LabelUI4" float="true" pos="10,7,0,0" width="48" height="48" bkimage="xiaoniu48.png" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" />
        </Container>
        <Container name="ContainerUIStep2" width="1023" height="291">
            <Label name="LabelUIOS" float="true" pos="416,50,0,0" width="182" height="137" bkimage="file=&apos;win7.jpg&apos; hole=&apos;true&apos;" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" />
            <Progress name="ProgressDownload" float="true" pos="195,220,0,0" width="603" height="33" bordercolor="#00008000" focusbordercolor="#000000FF" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" foreimage="progress.png" min="0" max="100" value="20" hor="true" />
            <Label name="LabelWaiting" text="已经下载20%, 请耐心等待..." float="true" pos="416,221,0,0" width="373" height="30" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" />
            <Button name="BtnDownloadTooSlow" text="{u}{l}下载太慢?让下载飞起来!{/l}{/u}" float="true" pos="195,262,0,0" width="398" height="22" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" showhtml="true" align="left"/>
        </Container>
        <Container name="ContainerUIStep1" width="1023" height="291">
            <Button name="BtnWin7" tooltip="点击安装win 7" float="true" pos="587,68,0,0" width="182" height="137" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" normalimage="win7.jpg" hotimage="win7-hot.jpg" pushedimage="win7-push.jpg" />
            <Button name="BtnXP" tooltip="点击安装xp" float="true" pos="260,68,0,0" width="182" height="137" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" normalimage="xp.jpg" hotimage="xp-hot.jpg" pushedimage="xp-push.jpg" />
            <Label name="LabelUI5" text="将鼠标移动到您想安装的系统桌面图像上并点击。" float="true" pos="139,241,0,0" width="662" height="24" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="2" />
            <Label name="LabelUI2" text="XP: 流行了10年的经典系统" float="true" pos="262,30,0,0" width="181" height="27" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="2" />
            <Label name="LabelUI3" text="Win 7: 更炫的新系统" float="true" pos="589,30,0,0" width="269" height="30" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="2" />
        </Container>
        <Container name="ContainerUIStep3" width="1023" height="291">
            <Label name="LabelUI12" float="true" pos="366,2,0,0" width="256" height="256" bkimage="Vista.png" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" />
            <Label name="LabelUI11" text="下载已经完成。按开始安装按钮开始安装。安装过程中会自动重启动计算机。" float="true" pos="139,245,0,0" width="662" height="24" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" font="2" />
        </Container>
        <Container name="ContainerUIBottom" width="1023" height="169">
            <Button name="ButtonUIReboot" visible="false" text="开始安装" float="true" pos="310,44,0,0" width="387" height="53" textcolor="#00FFFBF0" disabledtextcolor="#FFA7A6AA" font="0" align="center" normalimage="reboot.png" hotimage="reboot-hot.png" pushedimage="reboot.png" focusedimage="reboot.png" />
            <Button name="adv1" visible="false" float="true" pos="19,15,0,0" width="181" height="143" bordercolor="#0000FF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" />
               <Button name="adv2" visible="false" float="true" pos="219,15,0,0" width="181" height="143" bordercolor="#0000FF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" />
               <Button name="adv3" visible="false" float="true" pos="419,15,0,0" width="181" height="143" bordercolor="#0000FF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" />
               <Button name="adv4" visible="false" float="true" pos="619,15,0,0" width="181" height="143" bordercolor="#0000FF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" />
               <Button name="adv5" visible="false" float="true" pos="819,15,0,0" width="181" height="143" bordercolor="#0000FF00" textcolor="#FF000000" disabledtextcolor="#FFA7A6AA" align="center" />
          </Container>
    </VerticalLayout>
</Window>

简单吧,下一篇继续讲界面开发。

小妞会装机 -- 一个装机软件的开发笔记( 三)相关推荐

  1. 【Visual C++】游戏开发笔记三十七 浅墨DirectX提高班之五 顶点缓存的红颜知己:索引缓存的故事

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8304741 作者:毛星云(浅墨 ...

  2. 【Visual C++】游戏开发笔记三十七 浅墨DirectX提高班之五 顶点缓存的红颜知己 索引缓存的故事

    分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow 也欢迎大家转载本篇文章.分享知识,造福人民,实现我们中华民族伟大复兴! 本系列文 ...

  3. 【Visual C++】游戏开发笔记三十四 浅墨DirectX提高班之三 起承转合的艺术:Direct3D渲染五步曲...

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接: http://blog.csdn.net/zhmxy555/article/details/8223965 作者:毛星云(浅墨 ...

  4. 【Visual C++】游戏开发笔记三十三 浅墨DirectX提高班之二 化腐朽为神奇:DirectX初始化四步曲

    这篇文章里,我们将迈出精通DirectX的第一步,先了解典型Direct3D程序的书写流程,然后学习COM接口的对象的一些思想,然后按照"四步曲"的思路,系统地学习DirectX的 ...

  5. 【Visual C++】游戏开发笔记三十二 浅墨DirectX提高班之一 DirectX大局观认知篇

    本系列文章由zhmxy555(毛星云)编写,转载请注明出处. 文章链接:  http://blog.csdn.net/zhmxy555/article/details/8172615 作者:毛星云(浅 ...

  6. python winform开发_c#教程之.Net WInform开发笔记(三)谈谈自制控件(自定

    末日这天写篇博客吧,既然没来,那就纪念一下. 这次谈谈自制控件,也就是自定义控件,先上图,再说 1.扩展OpenFileDialog,在OpenFileDialog中添加各种文件(.txt,.jpg, ...

  7. ESP32 开发笔记(三)源码示例 6_TouchPad_Interrupt 电容触摸中断实现触摸按钮

    开发板购买链接 https://item.taobao.com/item.htm?spm=a2oq0.12575281.0.0.50111deb2Ij1As&ft=t&id=62636 ...

  8. 【Visual C++】游戏开发笔记三十五 站在巨人的肩膀上:游戏引擎导论

    看到在留言中很多朋友提到不太清楚DirectX与游戏引擎的区别的问题,在这里浅墨就专门把自己对游戏引擎的一些理解写成一篇文章,作为我们<Visual C++游戏开发>专栏的游戏引擎导论,也 ...

  9. 【Visual C++】游戏开发笔记三十九 浅墨DirectX教程之七 他山之石:几种几何体的快捷绘制法

    本篇文章里,我们对Direct3D之中几种几何体的简洁绘制方法进行了详细的剖析,最后依旧是提供文章配套的详细注释的demo源代码的欣赏,并在文章末尾提供了源代码下载.(这标题有些歧义的,这个几种是修饰 ...

最新文章

  1. Service Worker ——这应该是一个挺全面的整理
  2. Angular 2 DI系统中 函数forwardRef 的作用?
  3. Exceptionless使用介绍
  4. 花痴流口水颜文字_流口水可执行模型
  5. word中的表格空白部分整不掉,下面的表格拉不上来
  6. 圆形取景框 相机_据说这款设备可以使老旧单反相机解决无线联机拍摄方案
  7. mysql ddl log 源码_MySQL中ddl_log.log初步认识
  8. SpringBoot(1)---SpringBoot2.0技术视频教程
  9. 【算法】赫夫曼编码 解码 实际应用 文件的编码 解码
  10. java实现省市区的联动,chosen实现省市区三级联动
  11. sql server 2008r2安装注意的问题
  12. TM1622的程序设计实现
  13. 文件共享服务器热备,两台云服务器如何实现双机热备
  14. linu {,} 使用
  15. 用word模板制作幻灯片
  16. 容斥原理 A-1e9个兵临城下
  17. powershell安装sdkman
  18. FACEGOOD-Audio2Face(个人学习)
  19. java中使用axis发布和调用webService
  20. python图灵_python图灵机器人

热门文章

  1. java计算机毕业设计腾讯网游辅助小助手源代码+数据库+系统+lw文档1
  2. XMPP中文 XEP-0060: 发布-订阅(二)
  3. 测试-开发的恩怨情仇
  4. ArcGIS API+Canvas +Vue框架 制作前端地图打印功能
  5. 《达芬奇密码》与找移动硬盘
  6. SpringBoot--使用@RequestHeader获取请求头
  7. [原创]ACPI.sys,从Windows到Bios的桥梁(2):Windows应用程序响应主板上GPIO(SCI)设备中断 软件篇
  8. https详解+密钥交换算法+公钥与私钥
  9. linux服务器查看节点,集群内核节点查看命令linux
  10. VS2010 编译Duilib 错误