zoukankan      html  css  js  c++  java
  • 使用 C# 开发智能手机软件:推箱子(十二)

    这是“使用 C# 开发智能手机软件:推箱子”系列文章的第十二篇。在这篇文章中,介绍 Window/AboutDlg.cs 源程序文件。

    这个源程序文件包括 AboutDlg 类,该类继承自 System.Windows.Forms.Form 类。表示推箱子的“关于”对话框。例如以下图所看到的:

     

     





        以下是 Window/AboutDlg.Designer.cs 源程序的部分代码:

    namespace Skyiv.Ben.PushBox.Window
    {
      partial 
    class AboutDlg
      {

        
    // 这里省略了一些代码 

        
    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 源程序的代码:

     1using System;
     2using System.Windows.Forms;
     3using Skyiv.Ben.PushBox.Common;
     4
     5namespace Skyiv.Ben.PushBox.Window
     6{
     7  /// <summary>
     8  /// “关于”对话框
     9  /// </summary>

    10  public partial class AboutDlg : Form
    11  {
    12    public AboutDlg(bool isTopMost)
    13    {
    14      InitializeComponent();
    15      TopMost = isTopMost;
    16    }

    17
    18    protected override void OnLoad(EventArgs e)
    19    {
    20      base.OnLoad(e);
    21      LoadVersionInfo();
    22      LoadSystemInfo();
    23    }

    24
    25    protected override void OnResize(EventArgs e)
    26    {
    27      base.OnResize(e);
    28      LoadSystemInfo();
    29    }

    30
    31    void LoadVersionInfo()
    32    {
    33      tbxVersion.Text = "skyiv (R) 推箱子" + Fcl.NewLine +
    34        "版本号 " + Pub.GetVersionBuildString(Pub.Version) + Fcl.NewLine + Fcl.NewLine +
    35        "(C) Skyiv Studio (ben)" + Fcl.NewLine +
    36        "http://ben.skyiv.com" + Fcl.NewLine +
    37        "skyivben@gmail.com" + Fcl.NewLine + Fcl.NewLine +
    38        "推箱子是一款绿色软件。使用 C# 开发,基于 Microsoft .NET Compact Framework 2.0。

    " +
    39        "执行环境为使用 Microsoft Windows Mobile 6.0 的智能手机,也能够在安装有 " +
    40        "Microsoft .NET Framework 2.0 执行库的计算机上执行。";
    41    }
    42
    43    void LoadSystemInfo()
    44    {
    45      tbxSystem.Text = "操作系统标识: " + Environment.OSVersion.Platform + Fcl.NewLine +
    46        "操作系统版本号: " + Environment.OSVersion + Fcl.NewLine +
    47        "公共语言执行库版本号: " + Environment.Version + Fcl.NewLine +
    48        "屏幕分辨率: " + Pub.ToString(Screen.PrimaryScreen.Bounds.Size) + Fcl.NewLine +
    49        "程序位置: " + Pub.CodeBases;
    50    }

    51  }
    52}


        AboutDlg 类(以及 Window 文件夹下的表示各种对话框的类)的构造函数有一个布尔型的參数 isTopMost。表示“菜单 -> 前端显示”是否选中,即是否总是显示在最前面。另外,AboutDlg 类还重载了基类的 OnResize 方法,当“关于”对话框窗体的尺寸改变时,调用 LoadSystemInfo 方法更新“系统”信息。用于在智能手机在“横屏”和“竖屏”之间切换时显示正确的“屏幕分辨率”。
        另外,Smartphone 手机不支持 TabControl 控件,所以 Smartphone 版本号的推箱子程序的“关于”对话框直接在窗口上放一个 TextBox  控件显示信息。
  • 相关阅读:
    【bootstrapV3】移动端和PC端的 滚动监听
    【TP3.2】TP3.2的 FIND_IN_SET()的用法
    【jquery】多日期选择插件easyui date
    【onethink1.0】HTML模板获取前台和后台当前登录用户名
    【apache】phpstudy中apache 隐藏入口文件index.php (解决no input file specified错误)
    【PHP+JS】uploadify3.2 和 Ueditor 修改上传文件 大小!!
    【原创+亲测可用】JS如何区分微信浏览器、QQ浏览器和QQ内置浏览器
    【JS】移动端 好用的分享插件 soshm.js
    【TP3.2.X】linux环境下TP3.2.X的各个目录权限
    【php+微擎】微擎学习相关帮助推荐
  • 原文地址:https://www.cnblogs.com/yxysuanfa/p/6748109.html
Copyright © 2011-2022 走看看