如果你使用messagedlg(对showmessage也适用)可以汉化定义按钮caption的常量,具体操作步骤如下:

1.   打开文件consts.pas(在Delphi安装目录的/source/vcl下)

 
   
 2.   将以下资源字符串常量的值进行改动:    
 
 
      SMsgDlgWarning   =   '警告';  
 
      SMsgDlgError   =   '错误';  
 
      SMsgDlgInformation   =   '信息';  
 
      SMsgDlgConfirm   =   '确认';  
 
      SMsgDlgYes   =   '(&Y)是';  
 
      SMsgDlgNo   =   '(&N)否';  
 
      SMsgDlgOK   =   '确定';  
 
      SMsgDlgCancel   =   '放弃';  
 
      SMsgDlgHelp   =   '(&H)帮助';  
 
      SMsgDlgHelpNone   =   '无效的帮助';  
 
      SMsgDlgHelpHelp   =   '帮助';  
 
      SMsgDlgAbort   =   '(&A)放弃';  
 
      SMsgDlgRetry   =   '(&R)重试';  
 
      SMsgDlgIgnore   =   '(&I)忽略';  
 
      SMsgDlgAll   =   '(&A)全部';  
 
      SMsgDlgNoToAll   =   '(&o)全不';  
 
      SMsgDlgYesToAll   =   '(&A)全是';  
 
 ----   经过这样改动后,对应按钮的热键仍然可以使用。    
 3.打开文件dialogs.pas(在Delphi安装目录的/source/vcl下)  
 
 4.查到ButtonCaptions:  
          把   ButtonCaptions:   array[TMsgDlgBtn]   of   Pointer   =   (  
          @SMsgDlgYes,   @SMsgDlgNo,   @SMsgDlgOK,   @SMsgDlgCancel,  
          @SMsgDlgAbort,@SMsgDlgRetry,   @SMsgDlgIgnore,   @SMsgDlgAll,    
          @SMsgDlgNoToAll,   @SMsgDlgYesToAll,     @SMsgDlgHelp);  
      改为  
          ButtonCaptions:   array[TMsgDlgBtn]   of   string   =   (  
          '是',   '否',   '确定',   '取消',   '退出','重试',   '跳过',    
          '所有',   '全不',   'YesToAll',   '帮助');  
      把   LoadResString(ButtonCaptions[B])   改为ButtonCaptions[B]  
 (注意共有二处,因为上面已经将指针类型改为String,所以这里直接用ButtonCaptions[B] ) 
    5.   修改后编译生成dialog.dcu、consts.dcu文件。(如何编译请参照本博客delphi技巧13)  
   6.           将dialog.dcu、consts.dcu文件拷贝到../delphi6/lib目录下。

在Delphi下,如何使ShowMessage中的按钮中文化的更多相关文章

  1. Delphi下如何使程序在Win7/Vista上用管理员权限运行(转)

    Delphi程序必须在资源里面嵌入MANIFEST信息 一 首先编辑一个文件,内容如下: <?xml version="1.0" encoding="UTF-8&q ...

  2. DELPHI下的SOCK编程(转)

    DELPHI下的SOCK编程      本文是写给公司新来的程序员的,算是一点培训的教材.本文不会涉及太多的编程细节,只是简单讲解在DELPHI下进行Winsock编程最好了解的知识. 题外话:我认为 ...

  3. DELPHI下的SOCK编程

     DELPHI下的SOCK编程(转自http://www.cnblogs.com/devcjq/articles/2325600.html) 本文是写给公司新来的程序员的,算是一点培训的教材.本文不会 ...

  4. 深入Delphi下的DLL编程

    深入Delphi下的DLL编程 作者:岑心 引 言 相信有些计算机知识的朋友都应该听说过“DLL”.尤其是那些使用过windows操作系统的人,都应该有过多次重装系统的“悲惨”经历——无论再怎样小心, ...

  5. 扩展 delphi 泛型 以实现类似lambda功能 , C#中的any count first last 等扩展方法

    扩展 delphi 泛型 以实现类似lambda功能 , C#中的any count first last 等扩展方法 在C#中对泛型的扩展,输入参数是泛型本身的内容,返回值则是bool.基于这一点, ...

  6. DELPHI下API简述(1800个API)

    DELPHI下API简述 http://zero.cnbct.org/show.asp?id=144 auxGetDevCaps API 获取附属设备容量 auxGetNumDevs API 返回附属 ...

  7. Delphi下的RTTI函数大全

    http://ljz9425.blog.163.com/blog/static/369148572008111635253858/ Delphi下的RTTI(下) 2008-12-16 15:52:5 ...

  8. 在Delphi下使用迅雷APlayer组件进行免注册开发

    之前都是用的delphi下的dspack进行的视频开发,这个组件其实很好用,就是找解码器麻烦点,而且还得在客户的计算机上使用RegSvr32.exe也注册解码器,要不有可能播放不了. 结果在查找合适的 ...

  9. Delphi下利用WinIo模拟鼠标键盘详解 有参考价值

    https://blog.csdn.net/fgrass_163/article/details/6365296 Delphi下利用WinIo模拟鼠标键盘详解 2011年04月26日 21:03:00 ...

随机推荐

  1. Synergy

    Synergy 可以在多台电脑之间共享鼠标.键盘.剪贴板.Synergy是一套开源共享软件,完美跨 Win.Linux.Mac运行.真正做到使用一套键盘和鼠标就可控制多个电脑. 下载地址:http:/ ...

  2. 使用jQuery Mobile + PhoneGap 开发Android应用程序(转)

    使用jQuery Mobile + PhoneGap 开发Android应用程序(转) 一.简介 jQuery Mobile是jQuery在手机上和平板设备上的版本.jQuery Mobile 不仅给 ...

  3. android MVC

    Android 的官方建议应用程序的开发采用MVC 模式.何谓MVC? MVC 是Model,View,Controller 的缩写,从上图可以看出MVC 包含三个部分: 模型(Model)对象:是应 ...

  4. 简单修改hosts文件加快打开网页速度

    这个电脑小技巧的帖子菲菲博客分享如何通过简单一招利用修改系统的hosts文件来实现有效加快浏览器打开网页的速度.尤其是网络繁忙时DNS服务器负担加重的时候效果特别明显,有兴趣就和菲菲一起来学习一下吧, ...

  5. Hark的数据结构与算法练习之多路归并排序

    算法说明 多路归并排序也叫k路归并排序,实际上是归并排序的扩展版,同样也是归并排序的一种,通常的应用场景的针对大数据量的排序. 实现过程: 1.从字面可以看出,多路归并就是将待排的大数据量分成K路,然 ...

  6. Spotlight实时监控Windows Server 2008

    Windows Server 2008作为服务器平台已逐渐被推广和应用,丰富的功能和良好的稳定性为其赢得了不错的口碑.但是和Windows Server 2003相比,其系统的自我监控功能并没有多大的 ...

  7. IE下Checkbox标签的onchange事件兼容

    Checkbox onchange事件在谷歌上ok,在ie8上不起作用了. 一番周折,测试发现勾选了以后还要点击其他位置才会触发onchange事件. 用度娘查询了一下. 有下面两种解决方式: 用on ...

  8. Ubuntu 安装Redis体验

      背景:由于之前一直没有试过Linux的环境,今天加了内存之后,虚拟机开了3G,速度大大提高,对照博客试一下安装Redis的过程.   体验: 下载源码,解压,编译 $ wget http://do ...

  9. POJ1699 Best Sequence(AC自动机+状压DP)

    题目,求包含所有的给定的n个DNA片段的序列的最短长度. AC自动机上的DP题. dp[S][u]表示已经包含的DNA片段集合为S,且当前后缀状态是自动机第u个结点的最短长度 dp[0][0]=0 我 ...

  10. BZOJ1100 : [POI2007]对称轴osi

    将多边形转化为如下的环: 1到2的边,角2,2到3的边,角3,...,n-1到n的边,角n,n到1的边,角1 然后枚举对称轴,如果i是对称轴,那么[i-n,i+n]是一个回文串 用Manacher算法 ...