0

在 Win32 属性表上,文本“OK”、“Cancel”、“Apply”和“Help”会自动以系统语言显示。如果软件的语言与系统的语言不同,这可能是个问题。

例如,如果客户在英文 Windows 上安装我们软件的法文版本,属性表的内容将为法文,但属性表底部的标准按钮无论如何都是英文的。

有谁知道我该如何更改这些文本。

4

1 回答 1

3

实际上更改这些文本非常简单。唯一必须做的是从 CPropertySheet 派生一个类,重写 OnInitDialog 方法并更改重写的 OnInitDialog 中的文本。

class CMyPropertySheet : public CPropertySheet
{
public :
  CMyPropertySheet() ;

protected:
  virtual BOOL OnInitDialog();

  DECLARE_MESSAGE_MAP()
} ;

BOOL CMyPropertySheet::OnInitDialog()
{
  ...
  SetDlgItemText(IDOK, whatever..) ;
  SetDlgItemText(0x3021, whatever..) ;   // 0x3021 == IDAPPLY
  SetDlgItemText(IDCANCEL, whatever...) ;
  SetDlgItemText(IDHELP, whatever...) ;
}
于 2013-03-25T08:11:20.587 回答