代码之家  ›  专栏  ›  技术社区  ›  Don Reba

在Windows Mobile上拥有的Windows

  •  1
  • Don Reba  · 技术社区  · 15 年前

    在为WM6开发时,我调用了CreateWindow,并将HwndParent设置为我想要拥有的窗口。我不设置ws_子样式,但创建的窗口仍然成为子窗口。正确的方法是什么?

    这个 MSDN article 对于CreateWindow,提到WinCE 1.0的这种行为:

    Windows CE 1.0不支持拥有的窗口,对话框除外。如果hwndparent参数不为空,则会隐式给定窗口的ws_子样式。

    或者,也许,当它说CreateWindow确实创建了自己的窗口,并且CreateDialog*函数最终调用CreateWindow时,所有的msdn-wince文档都是错误的,正如hans-passant的注释所暗示的那样?

    2 回复  |  直到 15 年前
        1
  •  1
  •   Don Reba    15 年前

    正确的方法是为窗口提供ws_弹出式样式,如Microsoft的 Window Relationship Fundamentals WinCE 3.0文档:

    当您使用WS U弹出式样式创建窗口时,可以在顶级窗口之间创建所有者/拥有的窗口关系。因为顶级窗口没有父窗口,所以调用createWindow函数时指定为父窗口的窗口将成为新窗口的所有者窗口。

        2
  •  0
  •   Graham Perks    15 年前

    如果您传递的样式是ws-overlapped,它将为您打开ws-child。在创作过程中,你要传递什么样的风格?

    您可能希望传递0作为样式。