c#设置transparencyKey后整个窗口都看不见了
usingSystem;usingSystem.Collections.Generic;usingSystem.ComponentModel;usingSystem.Da...
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace test
{
public partial class Form1 : Form
{
[DllImport("user32.dll", EntryPoint = "SetParent")]
public static extern int SetParent(int hWndChild, int hWndNewParent);
[DllImport("user32.dll", EntryPoint = "FindWindow")]
public static extern int FindWindow(string lpClassName, string lpWindowName);
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SetParent(this.Handle.ToInt32(), FindWindow("Progman", "Program Manager"));
Rectangle ScreenArea = System.Windows.Forms.Screen.GetWorkingArea(this);
}
}
}
程序是想只在桌面上显示,不想要背景色只要上面的控件显示就行了,但设置了transparencyKey后,整个程序窗口都看不见了 展开
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Runtime.InteropServices;
namespace test
{
public partial class Form1 : Form
{
[DllImport("user32.dll", EntryPoint = "SetParent")]
public static extern int SetParent(int hWndChild, int hWndNewParent);
[DllImport("user32.dll", EntryPoint = "FindWindow")]
public static extern int FindWindow(string lpClassName, string lpWindowName);
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
SetParent(this.Handle.ToInt32(), FindWindow("Progman", "Program Manager"));
Rectangle ScreenArea = System.Windows.Forms.Screen.GetWorkingArea(this);
}
}
}
程序是想只在桌面上显示,不想要背景色只要上面的控件显示就行了,但设置了transparencyKey后,整个程序窗口都看不见了 展开
- 你的回答被采纳后将获得:
- 系统奖励15(财富值+成长值)+难题奖励20(财富值+成长值)
2个回答
展开全部
protected override CreateParams CreateParams
{
get
{
CreateParams parameter = base.CreateParams;
parameter.ExStyle |= 0x00080000;
return parameter;
}
}
段代码掉窗体控件都透明显示控件透明窗体吖
1.TransparencyKey只能将Form中的该颜色透明化.而不能将你背景图片中的该颜色透明.所以你看看.是不是你的背景卡通人物图片问题.
2.Opacity属性.0%为透明.100%为不透明.
---------------------
你把Form背景色和TransparencyKey都设为白色试.
{
get
{
CreateParams parameter = base.CreateParams;
parameter.ExStyle |= 0x00080000;
return parameter;
}
}
段代码掉窗体控件都透明显示控件透明窗体吖
1.TransparencyKey只能将Form中的该颜色透明化.而不能将你背景图片中的该颜色透明.所以你看看.是不是你的背景卡通人物图片问题.
2.Opacity属性.0%为透明.100%为不透明.
---------------------
你把Form背景色和TransparencyKey都设为白色试.
追问
但是最大的问题就是连窗口的边框都看不到,设置透明色应该只是窗口内的颜色透明……formboardstyle的值也不是None
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
windows7会出现这个问题。win8以上没有问题了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询