SetFont()-函数不适用于 wxFrame

SetFont()-function does not work for wxFrame

我有一段非常简单的代码可以为我的 wxFrame 设置三倍大的字体:

MainWin::MainWin()
       : wxFrame(NULL, wxID_ANY,wxEmptyString,
                 wxPoint(20,10), wxSize(1000, 600),
                 wxDEFAULT_FRAME_STYLE)
{
   wxFont font=GetFont();
   font=font.Scale(3.0);
   bool done=SetFont(font);

   wxMessageBox("test", "test", 5, this);

我的问题:它不起作用! wxMessageBox 和 wxFrame 的标题栏以及任何其他 children 都没有使用这种更大的字体。

所以...知道这里出了什么问题吗?

谢谢!

wxFrame字体会被它的(non-toplevel) children继承,所以设置它也不是完全没用,但它既不会用于它的标题栏,也不会用于任何消息它显示的框,因为它们都使用应用程序控制之外的 system-defined 字体。