天天看点

使用 C# 开发智能手机软件:推箱子(十二)

这是“使用

c# 开发智能手机软件:推箱子”系列文章的第十二篇。在这篇文章中,介绍 window/aboutdlg.cs 源程序文件。

这个源程序文件包括 aboutdlg 类,该类继承自 system.windows.forms.form 类。表示推箱子的“关于”对话框。例如以下图所看到的:

使用 C# 开发智能手机软件:推箱子(十二)
使用 C# 开发智能手机软件:推箱子(十二)
使用 C# 开发智能手机软件:推箱子(十二)
使用 C# 开发智能手机软件:推箱子(十二)
使用 C# 开发智能手机软件:推箱子(十二)
使用 C# 开发智能手机软件:推箱子(十二)

    以下是 window/aboutdlg.designer.cs 源程序的部分代码:

namespace skyiv.ben.pushbox.window

{

  partial class aboutdlg

  {

    // 这里省略了一些代码 

使用 C# 开发智能手机软件:推箱子(十二)

    private system.windows.forms.tabcontrol tclmain;

    private system.windows.forms.tabpage tpgversion;

    private system.windows.forms.tabpage tpgsystem;

    private system.windows.forms.textbox tbxversion;

    private system.windows.forms.textbox tbxsystem;

  }

}

    在“关于”对话框中,用一个 tabcontrol 控件来管理相关的选项卡页集。分为“版本号”和“系统”两个选项卡(tabpage 控件),每一个选项卡中使用 textbox 控件来显示相关的信息。

以下是 window/aboutdlg.cs 源程序的代码:

 1

使用 C# 开发智能手机软件:推箱子(十二)

using system;

 2

使用 C# 开发智能手机软件:推箱子(十二)

using system.windows.forms;

 3

使用 C# 开发智能手机软件:推箱子(十二)

using skyiv.ben.pushbox.common;

 4

使用 C# 开发智能手机软件:推箱子(十二)

 5

使用 C# 开发智能手机软件:推箱子(十二)

 6

使用 C# 开发智能手机软件:推箱子(十二)

 7

使用 C# 开发智能手机软件:推箱子(十二)

  /// <summary>

 8

使用 C# 开发智能手机软件:推箱子(十二)

  /// “关于”对话框

 9

使用 C# 开发智能手机软件:推箱子(十二)

  /// </summary>

10

使用 C# 开发智能手机软件:推箱子(十二)

  public partial class aboutdlg : form

11

使用 C# 开发智能手机软件:推箱子(十二)

12

使用 C# 开发智能手机软件:推箱子(十二)

    public aboutdlg(bool istopmost)

13

使用 C# 开发智能手机软件:推箱子(十二)

    {

14

使用 C# 开发智能手机软件:推箱子(十二)

      initializecomponent();

15

使用 C# 开发智能手机软件:推箱子(十二)

      topmost = istopmost;

16

使用 C# 开发智能手机软件:推箱子(十二)

    }

17

使用 C# 开发智能手机软件:推箱子(十二)

18

使用 C# 开发智能手机软件:推箱子(十二)

    protected override void onload(eventargs e)

19

使用 C# 开发智能手机软件:推箱子(十二)

20

使用 C# 开发智能手机软件:推箱子(十二)

      base.onload(e);

21

使用 C# 开发智能手机软件:推箱子(十二)

      loadversioninfo();

22

使用 C# 开发智能手机软件:推箱子(十二)

      loadsysteminfo();

23

使用 C# 开发智能手机软件:推箱子(十二)

24

使用 C# 开发智能手机软件:推箱子(十二)

25

使用 C# 开发智能手机软件:推箱子(十二)

    protected override void onresize(eventargs e)

26

使用 C# 开发智能手机软件:推箱子(十二)

27

使用 C# 开发智能手机软件:推箱子(十二)

      base.onresize(e);

28

使用 C# 开发智能手机软件:推箱子(十二)

29

使用 C# 开发智能手机软件:推箱子(十二)

30

使用 C# 开发智能手机软件:推箱子(十二)

31

使用 C# 开发智能手机软件:推箱子(十二)

    void loadversioninfo()

32

使用 C# 开发智能手机软件:推箱子(十二)

33

使用 C# 开发智能手机软件:推箱子(十二)

      tbxversion.text = "skyiv (r) 推箱子" + fcl.newline +

34

使用 C# 开发智能手机软件:推箱子(十二)

        "版本号 " + pub.getversionbuildstring(pub.version) + fcl.newline + fcl.newline +

35

使用 C# 开发智能手机软件:推箱子(十二)

        "(c) skyiv studio (ben)" + fcl.newline +

36

使用 C# 开发智能手机软件:推箱子(十二)

        "http://ben.skyiv.com" + fcl.newline +

37

使用 C# 开发智能手机软件:推箱子(十二)

        "[email protected]" + fcl.newline + fcl.newline +

38

使用 C# 开发智能手机软件:推箱子(十二)

        "推箱子是一款绿色软件。使用 c# 开发,基于 microsoft .net compact framework 2.0。

" +

39

使用 C# 开发智能手机软件:推箱子(十二)

        "执行环境为使用 microsoft windows mobile 6.0 的智能手机,也能够在安装有 " +

40

使用 C# 开发智能手机软件:推箱子(十二)

        "microsoft .net framework 2.0 执行库的计算机上执行。";

41

使用 C# 开发智能手机软件:推箱子(十二)

42

使用 C# 开发智能手机软件:推箱子(十二)

43

使用 C# 开发智能手机软件:推箱子(十二)

    void loadsysteminfo()

44

使用 C# 开发智能手机软件:推箱子(十二)

45

使用 C# 开发智能手机软件:推箱子(十二)

      tbxsystem.text = "操作系统标识: " + environment.osversion.platform + fcl.newline +

46

使用 C# 开发智能手机软件:推箱子(十二)

        "操作系统版本号: " + environment.osversion + fcl.newline +

47

使用 C# 开发智能手机软件:推箱子(十二)

        "公共语言执行库版本号: " + environment.version + fcl.newline +

48

使用 C# 开发智能手机软件:推箱子(十二)

        "屏幕分辨率: " + pub.tostring(screen.primaryscreen.bounds.size) + fcl.newline +

49

使用 C# 开发智能手机软件:推箱子(十二)

        "程序位置: " + pub.codebases;

50

使用 C# 开发智能手机软件:推箱子(十二)

51

使用 C# 开发智能手机软件:推箱子(十二)

52

使用 C# 开发智能手机软件:推箱子(十二)

    aboutdlg 类(以及 window 文件夹下的表示各种对话框的类)的构造函数有一个布尔型的參数 istopmost。表示“菜单 -> 前端显示”是否选中,即是否总是显示在最前面。另外,aboutdlg 类还重载了基类的 onresize 方法,当“关于”对话框窗体的尺寸改变时,调用 loadsysteminfo

方法更新“系统”信息。用于在智能手机在“横屏”和“竖屏”之间切换时显示正确的“屏幕分辨率”。

    另外,smartphone 手机不支持 tabcontrol 控件,所以 smartphone 版本号的推箱子程序的“关于”对话框直接在窗口上放一个 textbox  控件显示信息。

继续阅读