WinForm里的用户自定义控件如何半透明(急急)

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了WinForm里的用户自定义控件如何半透明(急急)相关的知识,希望对你有一定的参考价值。

参考技术A 控件半透明要重绘控件的 不是随便设置一个Transprant就可以的
Opacity是用来设置窗体透明度的,控件没有这个选项,只有Form才有。
参考技术B 设置窗体的Opacity属性吧 参考技术C 自定义控件.BackColor = Color.FormArgb(127,Color.White);追问

用户自定义控件有一个蓝色的背景,让这个蓝色背景半透明

追答

蓝色背景改为 127,0,0,255 。 //在属性里BackColor里改。127是255÷2的结果。

追问

还是不行

追答

首先,一些控件是无法透明的,如textbox和richtextbox

参考技术D 设置属性openness为0.5好了 第5个回答  2012-07-04 设置控件Backgroundcolor

winform绘制自定义控件

绘制一个矩形,在运行时可以点击,并且能像文本框一样输入文本。这样的控件该怎么实现啊
画矩形可以不用说了,很简单,但是后面的没头绪...
2楼方法我曾想过,但这样的话会像和label就没有多大分别了,也就是多了个框

3楼的方法是我第一个放弃的方法。。。。

参考技术A 在控件里添加一个类似Text属性,用来接收用户输入的文本。修改属性时,(this.refresh())引发控件重绘事件.在重绘事件里用DrawString方法写入Text属性值。如果输入文本超过矩形长度,那么你绘制的矩形边框最好也是控件的边缘。超过矩形长度的文本,将会看不见。当光标在文本框中移动时,再根据光标位置去重绘文本。

以上只是一个思路,要做到文本框那种功能,估计还有很多细节要考虑。
参考技术B 继承Control

重载Control的事件,如OnKeyPress,在OnKeyPress中把接收到的字符,赋给Control的Text,将Text画出来。

用一个定时器来实现光标,或者使用API的CreateCaret、SetCaretPos
参考技术C 在巨型里直接放一个文本框,把文本框的边框去掉,然后把文本框的text属性自己定义到自定义控件的属性上去 参考技术D 实现文本输入是很麻烦的东西
银行的输入控件都不是实现的很完善。
所以还是嵌入一个textbox,把边框去了。
第5个回答  2010-08-03 先画矩形,然后输入文字,然后超链接?
(*^__^*) ... ..

以上是关于WinForm里的用户自定义控件如何半透明(急急)的主要内容,如果未能解决你的问题,请参考以下文章

c#winform怎么把控件背景设为半透明,像这样

C#中如何实现WPF调用Winform中用户自定义的控件呢?

VB6 自定义控件透明问题

c# winform 如何实现窗体边框半透明

winform 自定义控件

winform中自带打印控件如何循环打印数据