如果你使用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. 微信公众平台网页获取用户OpenID方法

    下面我们一起来看看关于微信公众平台网页获取用户OpenID方法,有需要了解的朋友可以一起来看看吧.用户点击微信自定义菜单view类型按钮后,微信客户端将会打开开发者在按钮中填写的url值 (即网页链接 ...

  2. strcat函数造成的段错误(Segmentation fault)

    转自:http://book.51cto.com/art/201311/419441.htm 3.21  strcat函数造成的段错误 代码示例 int main() { char dest[7]=& ...

  3. java错题本

    1.判断题: Java程序一般应当含有main方法,因为它是所有JaVa程序执行的入口(错) 解析:applet(java小程序)不用,application(java应用程序)需要.(见java a ...

  4. loj 1165(bfs+康托展开)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26879 思路:题目意思很简单,就是通过一些位置的交换,最后变成有序 ...

  5. android 定时器的实现

    在Android上常用的定时器有两种,一种是Java.util.Timer,一种就是系统的AlarmService了. 实验1:使用Java.util.Timer. 在onStart()创创建Time ...

  6. C#中使用ListView动态添加数据不闪烁并显示当前插入值

    首先,自定义一个类ListViewNF,继承自 System.Windows.Forms.ListView class ListViewNF : System.Windows.Forms.ListVi ...

  7. [hive小技巧]使用limit查询变成抽样,而不是全盘扫描

    将set hive.limit.optimize.enable=true 时,limit限制数据时就不会全盘扫,而是根据限制的数量进行抽样. 同时还有两个配置项需要注意: 1.hive.limit.r ...

  8. DOS常用的简单命令

    在windows下的cmd里使用 dir 列出当前目录下的文件及文件夹 md 创建目录 rd 删除目录(只能删除空目录) cd 进入指定目录 cd .. 返回上一级目录 cd / 返回到根目录 del ...

  9. A. Robot Sequence

    A. Robot Sequence time limit per test 2 seconds memory limit per test 256 megabytes input standard i ...

  10. sublime快捷键-for mac

    打开/前往 按键 解释 ⌘T 前往文件 ⌘⌃P 前往项目 ⌘R 前往方法 ⌘⇧P 命令提示 ⌃G 前往行 ⌃ ` 打开python 控制台 编辑 按键 解释 ⌘L 选择行 (重复按下将下一行加入选择) ...