使用.INI文件为输入界面创建“动态帮助” 选择自 trnbo 的 Blog

news/2024/7/5 1:12:51
 

在c#编程中,某些情况下我们可能还会用到.INI文件。例如为一个输入界面创建“动态帮助”:

我们在输入界面下方设置一个标签,当用户将光标移动到每一个TextBox或其他输入,选择框时,标签文字自动变换为该输入项的一些帮助信息。

INI文件是文本文件,由若干节(section)组成,在每个带括号的标题下面,是若干个关键词(key)及其对应的值(Value)

  [Section]

  Key=Value

我们的INI文件比较简单,文件名为:HelpInfo.ini。
-----------------
[PromptInfo]
YourTextBox = 请输入XXXXX信息。

-----------------

首先我们要用以下语句调用kernel32.dll

[DllImport ("kernel32")]
  private static extern int GetPrivateProfileString(string section, string key, string def, StringBuilder retVal, int size, string filePath);

然后为输入项(如一个TextBox)的Enter事件编写一个回调方法

this.YourTextBox.Enter += new System.EventHandler(this.conEnter);
private void conEnter(Object sender, System.EventArgs e)
{
   string strPromptFile = Directory.GetCurrentDirectory() + "//HelpInfo.ini";//获取INI文件所在的路径

    string strClsName = sender.GetType().ToString().ToUpper();
    if( strClsName.EndsWith("TEXTBOX") )
    {
         if(sender.Equals(YourTextBox))
         {      
              GetPrivateProfileString("PromptInfo", "YourTextBox" ,"",strPromptContent,
                                                   1024, strPromptFile);     
     }
    txtHelpContent.Text = strPromptContent.ToString();//txtHelpContent就是显示帮助信息的标签
}


http://www.niftyadmin.cn/n/3879804.html

相关文章

C#中的类型转换 选择自 sxqyj 的 Blog

C# 出来也有些日子了,最近由于编程的需要,对 C# 的类型转换做了一些研究,其内容涉及 C# 的装箱/拆箱/别名、数值类型间相互转换、字符的 ASCII 码和 Unicode 码、数值字符串和数值之间的转换、字符串和字符数组/字节数组之间的转换、各种数值…

declare sql语句_Sql Server中孤立的SQL用户查找和删除

问题最近公司很多数据库在上云,也有一部分在下云。这期间出现了很多问题,其中一个比较恶心的问题就是“孤立用户”。当数据库备份还原以后用以前的用户发现不能登录。一开始以为是登录账号没有创建,然后重新创建登录账号,然后再授…

Hook钩子攻略 选择自 Gongnanpi 的 Blog

一。写在最前本文的内容只想以最通俗的语言说明钩子的使用方法,具体到钩子的详细介绍可以参照下面的网址: http://www.microsoft.com/china/community/program/originalarticles/techdoc/hook.mspx二。了解一下钩子 从字面上理解,钩子就是想钩…

quartz可以指定方法名吗_柴犬可以剃毛吗?柴犬掉毛及应对方法

点击蓝字关注“柴犬大队”,时刻掌握最新动态!柴犬属于双层毛的犬类,外层是粗硬的起保护作用的被毛,里层是细软的底毛,在春夏交接之时,柴柴会褪掉里层的底毛,只留下外层的保护毛。那么&#xff0…

VS中资源文件的使用心得,建议关注! 选择自 smallmark 的 Blog

假设有两个文件:main.exe 和 lib.dllmain.exe调用lib.dll中的某个类在lib.dll中使用 Assembly.GetExecutingAssembly 得到的将是指向 lib.dll 的Assembly 如果使用 Assembly.GetEntryAssembly 得到的将是指向 main.exe 的Assembly还有一个问题值得关注&#…

学python编程好就业吗_学Python人工智能开发?有没有前途

学python人工智能开发?有没有前途?近两年来,由于语音技术、人工智能发展,以及亚马逊、Google 等厂商积极推动技术在商业落地的情况下语音 AI 各方面的潜力正在逐步被挖掘出来。学细心的同学们都会发现,从我们日常用的智能音箱,到…

新增加的HTML扩充

新增加了一些HTML扩充以支持样式表。这些扩充允许在HTML文档中包含样式表,允许HTML文档链接外部样式表,允许CSS规则与某一类单元相关联。仅少数HTML扩充是必须的:三个新单元: STYLE、 SPAN 和具有属性 REL"stylesheet"…

3变量程序_只会G代码,不会宏程序就别说你是数控师傅

一、变量普通加工程序直接用数值指定G代码和移动距离;例如,GO1和X100.0。使用用户宏程序时,数值可以直接指定或用变量指定。当用变量时,变量值可用程序或用MDI面板上的操作改变。例如:#1=&#…