其實普通的圖片控制項上顯示字元很簡單,拖個圖片控制項再拽個Label就ok了。但是這樣可能達不到我們的要求,比如EyesBaby休息視窗中要求隱藏倒計秒數,如果按照之前的做法Label部分背景會有陰影製作效果。下面就是主要怎末讓Label的背景透明,讓字元感覺跟圖片溶為一體;
代碼實現:
方式1:
pictureBox1.SendToBack();
// 設定Label背景為透明色
lblMsg.BackColor = Color.Transparent;
lblMsg.Parent = pictureBox1;
lblMsg.BringToFront();
方式2:
pictureBox1.CreateGraphics().DrawString(lblMsg.Text, lblMsg.Font, new
SolidBrush(lblMsg.ForeColor), lblMsg.Left - pictureBox1.Left, lblMsg.Top - pictureBox1.Top);
兩種方式選一即可;方式1較為普通,就是將Label背景設定為透明;方式2是將Label中的文字寫入到圖片中(此類方式不適合在動態圖片上做)。
因為EyesBaby休息視窗提示包含動態圖片,所以採用的是第一種方式。
原始碼:http://eyesbaby.codeplex.com/
安裝版:http://files.cnblogs.com/yizhuqing/EyesBabySetup10.zip
我的第一款工具 + 生產力-眼保程式(EyesBaby)
EyesBaby1.0使用協助文檔
EyesBaby功能實現之視窗拖拽與縮放功能
EyesBaby功能實現之圖片控制項上添加字元
EyesBaby功能實現之Windows前景色彩調節器
EyesBaby功能實現之軟體更新
EyesBaby功能實現之視窗漸現效果
歡迎加入EyesBaby開發小組
EyesBaby需求反饋小組