如何制作类似RocketDock这样的窗体

问题描述

如题,我本来的想法是制作类似RocketDock这样的东西,但首先我在绘制窗体的时候我就开始遇到困难了,如果你把窗体的Opacity设置为0,那么窗体连带着上边的控件全部被透明化了。但不这么做的话,窗体会带一个建造窗体时的颜色=-=(注:这个地方必须是透明的,不然移植出去就搞笑了……)

问题出现的环境背景及自己尝试过哪些方法

开发环境:Win10专业版,VS2017社区版

尝试过的方法:

1、直接把窗体的背景设置为color.fromArgb(),但是抛出了异常1。
2、测试使用MDI窗体透明度为0,然后新建了个Form对象然后像加空间一样加入MDI窗体,但是抛出了异常2。
3、测试把Form对象设置为非顶层对象,但透明了,Form对象的不透明不生效。

相关代码

// 请把代码文本粘贴到下方(请勿用图片代替代码)
frmTest.backColor=Color.fromArgb(200,255,0,0);

MDIParent1.Opacity=0;
Form frmChild=new Form();
frmChild.BackColor=Color.fromArgb(255,255,0,0);
frmChild.TopLevel=false;

你期待的结果是什么?实际看到的错误信息又是什么?

异常1,控件不支持透明的背景色

异常2,无法将顶级控件添加到控件

思否的大牛们,求解答TAT头痛了几天了

阅读 1.4k
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进