0
case WM_CREATE:
    {
    int randomsize=0;
    //std::string lineofquote;
    char lineofquote[255];
    std::ifstream infile;
    infile.open("quotes.txt",std::ios::in);
    if (infile)
    {
        MessageBox(NULL,"infile failed","Error reading file", MB_OK);
        return 0;
    }
    newhandler = CreateWindow(TEXT("static"),TEXT("Quote here") ,WS_CHILD | WS_VISIBLE , 0,0,550,150,hWnd,NULL,NULL,NULL);

    while(!infile.eof())//get file size
    {
        infile.getline(lineofquote,255,'\n');
        SetWindowText(newhandler,lineofquote);
        randomsize++;
    }
    infile.close();
    //std::cout<<randomsize;

    break;
    }

当我运行这个程序时,我似乎根本看不到我的窗口。这里可能有什么问题?

4

2 回答 2

1

这不是您创建窗口的方式。CreateWindow 您使用API创建一个窗口。你需要做几件事。可能这个MSDN 教程可以提供帮助。

WM_CREATE是创建窗口时触发的事件,通常使用上述 API。

始终正确阅读文档。只要您在处理 Win32 API,MSDN 就是您的圣经。

于 2012-05-27T04:23:38.490 回答
1

检查你的ShowWindow()功能。您可以设置CmdShow parameter to 0这意味着您的窗口将不可见,或者只是您忘记调用此函数。此外,您可以检查是否RegisterClassEx(...)正常工作。

于 2012-05-27T15:36:00.020 回答