【发布时间】:2011-10-03 09:03:20
【问题描述】:
我在 Visual Studio 2010 Express Edition 中使用 c++/cli。
我想要做的是创建一个不可见的面板,但它仍然接受/接收单击和双击消息以及可能的其他鼠标输入。如果我将控件可见性设置为 FALSE,那么这似乎会禁用任何鼠标输入。
我已尝试获取绘制消息并且什么都不做(正如其他来源所建议的那样)以尝试使面板根本不绘制但不是不可见,但面板似乎仍在绘制。
我应该在绘制消息中做什么来告诉窗口我已经绘制了面板?
我的面板绘图功能是:
private: System::Void panel1_Paint(System::Object^ sender, System::Windows::Forms::PaintEventArgs^ e) {
}
如果对我如何实现这一点有任何其他建议,那将很有帮助。
【问题讨论】:
-
不可见的控件不能接收焦点,因此不能接收任何键盘或鼠标事件。 Panel 类也不是为了接收焦点而设计的,它无法向用户显示它拥有焦点。您真正想要完成什么。