❶ 如何使C#中的控制項半透明
一部分控制項可以直接設置他的backColor為transParent 即可。 可以具體說說你的需求
❷ 如何使插入到Word中的ActiveX控制項背景透明,前景半透明
WORD2007以下版本沒有設置圖片透明度的選項。但可以使用變通的方法設置 WORD2003設置如下: 1、在圖片上右鍵。 2、設置圖片格式。 3、設置圖片格式窗口的「圖片」。 4、圖像控制的顏色。 5、選擇「沖蝕」 在Word 2007中選中需要設置透明色的圖片,在...
❸ VB6如何設置半透明窗體和控制項
先建一個標准EXE工程,然後添加一個用戶控制項,把以下代碼復制到控制項代碼中,再把此控制項放置到Form1上。
[vb]view plain
OptionExplicit
"kernel32"Alias"RtlMoveMemory"(DestinationAsAny,SourceAsAny,ByValLengthAsLong)
"user32"(ByValhwndAsLong,lpRectAsRECT)AsLong
"user32"(ByValhwndAsLong,lpPointAsPOINTAPI)AsLong
"user32"(ByValhwndAsLong,lpPointAsPOINTAPI)AsLong
"user32"(lpRectAsRECT,ByValX1AsLong,ByValY1AsLong,ByValX2AsLong,ByValY2AsLong)AsLong
"user32"(lpRectAsRECT,ByValXAsLong,ByValYAsLong)AsLong
PrivateTypePOINTAPI
XAsLong
YAsLong
EndType
PrivateTypeRECT
LeftAsLong
TopAsLong
RightAsLong
BottomAsLong
EndType
"user32"Alias"DrawTextA"(ByValhdcAsLong,ByVallpStrAsString,ByValnCountAsLong,lpRectAsRECT,ByValwFormatAsLong)AsLong
PrivateConstDT_SINGLELINE=&H20
PrivateConstDT_CENTER=&H1
PrivateConstDT_VCENTER=&H4
"user32"(ByValhwndAsLong)AsLong
"user32"(ByValhwndAsLong,ByValhdcAsLong)AsLong
"gdi32"(ByValhdcAsLong)AsLong
"gdi32"(ByValhdcAsLong)AsLong
"gdi32"(ByValhdcAsLong,ByValnWidthAsLong,ByValnHeightAsLong)AsLong
"gdi32"(ByValhdcAsLong,ByValhObjectAsLong)AsLong
"gdi32"(ByValhObjectAsLong)AsLong
"user32"(ByValhwndAsLong,ByValnCmdShowAsLong)AsLong
PrivateConstSW_SHOW=5
PrivateConstSW_HIDE=0
"gdi32"(ByValhDestDCAsLong,ByValXAsLong,ByValYAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValdwRopAsLong)AsLong
"msimg32"(ByValhDestDCAsLong,ByValXAsLong,ByValYAsLong,ByValnWidthAsLong,ByValnHeightAsLong,ByValhSrcDCAsLong,ByValxSrcAsLong,ByValySrcAsLong,ByValwidthSrcAsLong,ByValheightSrcAsLong,ByValblendFunctAsLong)AsBoolean
Dimm_hMemDCAsLong
Dimm_hMemBmpAsLong,m_hMemBmpPrevAsLong
Dimm_rcControlAsRECT
PrivateSubUserControl_Initialize()
UserControl.AutoRedraw=True
UserControl.BackColor=vbRed
m_hMemDC=CreateCompatibleDC(UserControl.hdc)
EndSub
PrivateSubUserControl_Terminate()
Ifm_hMemBmp<>0Then
DeleteObjectSelectObject(m_hMemDC,m_hMemBmpPrev)
EndIf
DeleteDCm_hMemDC
EndSub
PublicSubTranslucence()
DimhdcAsLong
DimtPtAsPOINTAPI
'獲得控制項當前位置和大小
ClientToScreenUserControl.hwnd,tPt
ScreenToClientUserControl.ContainerHwnd,tPt
CallGetClientRect(UserControl.hwnd,m_rcControl)
OffsetRectm_rcControl,tPt.X,tPt.Y
'創建一幅內存點陣圖
Ifm_hMemBmp<>0Then
DeleteObject(SelectObject(m_hMemDC,m_hMemBmpPrev))
EndIf
m_hMemBmp=CreateCompatibleBitmap(UserControl.hdc,m_rcControl.Right,m_rcControl.Bottom)
m_hMemBmpPrev=SelectObject(m_hMemDC,m_hMemBmp)
'隱藏控制項
ShowWindowUserControl.hwnd,SW_HIDE
DoEvents
'保存控制項容器的圖像到內存點陣圖中
DimhDesktopDCAsLong
hDesktopDC=GetDC(UserControl.hwnd)
BitBltm_hMemDC,0,0,m_rcControl.Right,m_rcControl.Bottom,hDesktopDC,0,0,vbSrcCopy
ReleaseDC0,hDesktopDC
'通過alpha效果進行半透明渲染
UserControl.AutoRedraw=True
AlphaBlendm_hMemDC,0,0,m_rcControl.Right,m_rcControl.Bottom,UserControl.hdc,0,0,m_rcControl.Right,m_rcControl.Bottom,5242880
UserControl.AutoRedraw=False
'顯示控制項
ShowWindowUserControl.hwnd,SW_SHOW
'將渲染後的結果復制到控制項中
BitBltUserControl.hdc,0,0,m_rcControl.Right,m_rcControl.Bottom,m_hMemDC,0,0,vbSrcCopy
EndSub
PrivateSubUserControl_Paint()
BitBltUserControl.hdc,0,0,m_rcControl.Right,m_rcControl.Bottom,m_hMemDC,0,0,vbSrcCopy
EndSub
在Form1的Form_Activate事件里輸入以下代碼:
[vb]view plain
PrivateSubForm_Activate()
Me.UserControl11.Translucence
EndSub
最後,你將看到一個粉紅色半透明的方塊,該方塊就是你所需要的半透明的控制項。至於控制項的其它功能,可以自行擴展。
❹ WinForm里的用戶自定義控制項如何半透明(急急)
控制項半透明要重繪控制項的 不是隨便設置一個Transprant就可以的
Opacity是用來設置窗體透明度的,控制項沒有這個選項,只有Form才有。
❺ win32窗口上的自己寫的控制項怎樣實現半透明
雖然不是無法實現,但比較麻煩。 因為opacity屬性會讓窗體上所有的控制項都變成透明的,所以我們可以這樣辦。 代碼如下: Form f = new Form(); //創建一個新窗體 Label lab = new Label(); //要顯示的文本 void MainFormLoad(object sender, EventArgs e) { f.FormBorderStyle = FormBorderStyle.None; //設置窗體無邊框 f.ShowInTaskbar = false; f.BackColor = Color.Red;f.TransparencyKey = f.BackColor; //讓窗體透明 lab.Text = "我是在透明窗體上的不透明文本!"; lab.BackColor = Color.Transparent; //背景色透明 lab.Location = new Point(100,150); //調整在窗體上的位置 f.Controls.Add(lab); f.TopLevel = true; f.Show(); } void MainFormMove(object sender, EventArgs e) { f.Location = this.Location; } 時間倉促,這段代碼仍然不是很完美,需要你自己仔細修復一下。
❻ C# 控制項透明~ 如何使listView控制項半透明
一:大小圖標的顯示切換:
《1》 private void 大圖標ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.lvcar.View = View.LargeIcon;
}
《2》 private void 小圖標ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.lvcar.View = View.SmallIcon;
}
《3》 private void 列表ToolStripMenuItem_Click(object sender, EventArgs e)
{
this.lvcar.View = View.Details;
}
二:窗體的透明顯示
private void Form1_Load(object sender, EventArgs e)
{
//整體透明度
this.Opacity = 10;
this.timer1.Start();
//設置窗體透明色
this.TransparencyKey = this.BackColor;
}
三:listview中一次刪除多項數據
private void 刪除ToolStripMenuItem_Click(object sender, EventArgs e)
{
if (!(this.listView1.SelectedItems.Count == 0))
{
int count = this.listView1.SelectedItems.Count-1;
int flag = 0;
for (int i = count; i >= 0; i--)
{
int index = this.listView1.SelectedItems[i].Index;
List.RemoveAt(index);
flag++;
}
if (flag == count + 1)
{
MessageBox.Show("刪除成功");
}
}
}
四:刪除ArrayList的元素
ArrayList.Remove(對象名) //刪除指定對象名的對象,刪除一個對象
ArrayList.RemoveAt(index) //刪除指定索引的對象,刪除一個對象
ArrayList.Clear() //清除集合內的所有元素
❼ c#winform怎麼把控制項背景設為半透明,像這樣
背景圖可以用ps簡單處理,快速選擇等工具選擇後,設置像素透明度,也可以慢慢扣邊框,記住不是圖層的透明度,然後保存為png格式,再用vs載入即可,
填充模式可以自己嘗試