如何实现全磨砂玻璃窗体+透明的Textbox+透明度不一样
如下图:有朋友说网上有代码,可我实在没这个本事找到,如果有朋友知道贴网址也行。
.net可以,但最好是VB6的。 --------------------编程问答-------------------- 怎么看上去是不透明的呢 --------------------编程问答-------------------- 我是指磨砂玻璃式的透明。 --------------------编程问答-------------------- http://www.mndsoft.com/blog/article.asp?id=715 --------------------编程问答-------------------- 透明的效果,我倒是有一个例子,明天给你发上来,但是磨砂效果的,,我就不懂了,是不是你的窗体上面要加载一个有磨砂效果的图片才行哦?我想应该是的。 --------------------编程问答-------------------- to chenjl1031:
是要窗口全透明 + 控件(Textbox)半透明。 --------------------编程问答-------------------- 如果有GDI+绘制的Textbox就解决问题了。
有人知道哪儿能找到这样的控件么?
听说好像有个办法强制让VB.net用GDI+绘制所有控件,但我只是听说过你知道实现办法。 --------------------编程问答-------------------- 自己UP下好了 --------------------编程问答-------------------- Private Declare Function SetLayeredWindowAttributes Lib "user32.dll" (ByVal hwnd As Long, ByVal crKey As Long, ByVal bAlpha As Byte, ByVal dwFlags As Long) As Boolean
Private Declare Function SetWindowLong Lib "user32" Alias "SetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long, ByVal dwNewLong As Long) As Long
Private Declare Function GetWindowLong Lib "user32" Alias "GetWindowLongA" (ByVal hwnd As Long, ByVal nIndex As Long) As Long
Const LWA_ALPHA = 2
Const GWL_EXSTYLE = (-20)
Const WS_EX_LAYERED = &H80000
Private Sub Form_Load()
SetWindowLong hwnd, GWL_EXSTYLE, GetWindowLong(hwnd, GWL_EXSTYLE) Or WS_EX_LAYERED
SetLayeredWindowAttributes hwnd, 0, 128, LWA_ALPHA
End Sub
--------------------编程问答-------------------- tags --------------------编程问答-------------------- 关注一下! --------------------编程问答-------------------- 还是没答案哦 --------------------编程问答-------------------- 窗体能透明 --------------------编程问答-------------------- 继续等 --------------------编程问答-------------------- 不知你系统是Vista 还是XP 磨砂玻璃式的透明只有VISTA才可以实现 --------------------编程问答-------------------- 3楼就可以实现 --------------------编程问答-------------------- 不对,3楼仅仅是磨砂玻璃窗体
补充:VB , API