我希望能够在Visual Studio中获得异常时设计类似的,这是一种窗口,其中一行将窗口连接到代码窗口中的一个点。我在下面列出了一张图片:
我注意到,只要代码窗口失去焦点,异常窗口就会消失。但是,当聚焦时,我可以移动窗口,箭头继续指向目标。
这是怎么做到的?具体来说,如何从一个窗口绘制一条线到另一个窗口??
我正在使用C#进行编码并使用Windows窗体。
答案 0 :(得分:4)
在您的示例中,如果文本框失去焦点,则具有例外的窗口不会总是消失!
通过使用Spy ++工具稍微调查一下(将查找窗口光标准确地放在行上),您会注意到在黄色文本和异常窗口之间看到的行包含在一个窗口中(具有透明背景) )(在VS 2010中具有类型为“WindowsForms10.Window.8.app.0.34f5582_r41_ad1”的类窗口)。此窗口也具有WS_POPUP样式,并且是该行的精确边界框(其大小和位置恰好与该行完全匹配)。
所以你可以做同样的事情:创建一个透明的弹出窗口,在其上画一条线并设置它的位置和大小,以便在你想要的控件之间出现这条线。
答案 1 :(得分:2)
我不确切知道它是如何完成的,但你可以用这个想法做类似的事情。