WinForm背景片的加
我用C#了小程序, 在第一加的Form里面 有20背景色置透明的Checkbox 另外 我Form置了一背景片 果 在行生成的exe文件 能很明的感到 Form上的 Checkbox 是一一 的呈出的 像慢作一 好滑稽 上搜了半天 只有人 要在Form的 Onpaint事件里面 通DrawImage 是Fill方法 把背景片 加 不能直接置背景片 但是我了半天 是有解 哪高手朋友 能的代么
[解决办法]
使用透明后显示效果可能会差一些
[解决办法]
要么默认就“慢”点,要么就不要设置透明。界面上应该越简单控件越少越好。
[解决办法]
这是我以前写的一段的,由于太长了,只能分两次了
<script type= "text/javascript ">
<!--
var gIndex = 0;//当前播放
var sid2;
var timePicPlay=10000;//默认播放速度 10秒
var Setjindutiao_i=100;//进度条%
var Setjindutiao_i_add=1;//进度条%增长
var Picload_i=3;//定义载入数量
var PicHadload_i=0;//已载入数量 BY hujiangbo
var timeout_Picload=10000;//载入超时
var timeoutPicload=0;////载入超时计
var tiaojie_i=5000;
var tiaojie_max=30000;
var tiaojie_min=10000;
/* Data begin */
var sPicArr = new Array();
for (ii=0;ii <10;ii++){
sPicArr[ii] = new Array(
"images/loadbigimg.jpg ",
".... ",
0,
"# "
);
}
/* Data end */
function GetObj(objName){
if(document.getElementById){
return eval( 'document.getElementById( " ' + objName + ' ") ');
}else if(document.layers){
return eval( "document.layers[ ' " + objName + " '] ");
}else{
return eval( 'document.all. ' + objName);
}
}
NS6 = (document.getElementById&&!document.all);
IE = (document.all);
NS = (navigator.appName== "Netscape " && navigator.appVersion.charAt(0)== "4 ");
var preImages=new Image();
var preImages2=new Image();
var int_imgFromServer=1;//page
var maxPage_int=0;
var gIndex2=0;
function load_pics(index){
if ((index+1)> =sPicArr.length)
index=9;
gIndex2=index+1;
//area_1
getDataXml( "Wc_ImageShow_GetImageInfo.aspx ", "GET ", "page= "+int_imgFromServer.toString()+ "&area_1= "+area1+ "&area_2= "+area2+ "&area_3= "+area3+ "&pic_kind= "+pic_kindId, "XMLHTTPload_picsInfo ");
}
function SetPicItem(){
for (ii=0;ii <9;ii++){
sPicArr[ii][0] = sPicArr[ii+1][0];
sPicArr[ii][1] = sPicArr[ii+1][1];
sPicArr[ii][2] = sPicArr[ii+1][2];
sPicArr[ii][3] = sPicArr[ii+1][3];
}
}
function getTimeAndDate(){
var cookieExpires=new Date();
cookieExpires.toGMTString();
var utcdate=cookieExpires.getUTCDate().toString();
var utcyear=cookieExpires.getUTCFullYear().toString();
var utcmonth=cookieExpires.getUTCMonth();
var expires=utcyear+ "- "+ utcmonth + "- "+utcdate+ " "+cookieExpires.getUTCHours()+ ": "+cookieExpires.getUTCMinutes()+ ": "+cookieExpires.getUTCSeconds()
return expires
}
function XMLHTTPload_picsInfo(XmlDoc){
if (doNotLoad==true)
return;
if (gIndex2 <9 && sPicArr[gIndex2][2]!=0)
return;
if (XmlDoc){
if (XmlDoc.getElementsByTagName( 'imgMaxPage ')&&XmlDoc.getElementsByTagName( 'imgMaxPage ')[0]&&XmlDoc.getElementsByTagName( 'imgMaxPage ')[0].firstChild&&XmlDoc.getElementsByTagName( 'imgMaxPage ')[0].firstChild.data&&(int_imgFromServer==1)){
maxPage_int=parseInt(XmlDoc.getElementsByTagName( 'imgMaxPage ')[0].firstChild.data);
if (maxPage_int <1){
alert( "数据库中没有任何此类别的图片 ");
return;
}
GetObj( 'RightBottom_playTo ').disabled=false;
}
if(!XmlDoc.getElementsByTagName( 'imgHref ')[0]||!XmlDoc.getElementsByTagName( 'imgHref ')[0].firstChild){
if (GetObj( "Wc_rightBottomMsgBoxText "))
GetObj( "Wc_rightBottomMsgBoxText ").innerHTML= "读取图片失败 <br> 你选择的地区和类别中没有图片 <br> "+getTimeAndDate();
if (obj_Wc_rightBottomMsgBox)
obj_Wc_rightBottomMsgBox.style.display= 'block ';
return;
}
for (ir=0;ir <12;ir++){
sPicArr[gIndex2][3]=XmlDoc.getElementsByTagName( 'imgHref ')[0].firstChild.data;
sPicArr[gIndex2][2]=int_imgFromServer;
sPicArr[gIndex2][1]=XmlDoc.getElementsByTagName( 'imgTitle ')[0].firstChild.data;
sPicArr[gIndex2][0]=XmlDoc.getElementsByTagName( 'imgUrl ')[0].firstChild.data;
}
if (gIndex2==9){
SetPicItem();
}
preImages2=new Image();
preImages2.src = sPicArr[gIndex2][0];
XmlDoc=null;
if (maxPage_int> int_imgFromServer)
int_imgFromServer++;
else
int_imgFromServer=1;
}
}
function loadingNowPreImg(){//ie //当前的图片未载入就显示载入,一直到超时
if (!preImages.complete){
obj_imgLoadDiv.style.display= "block ";
timeoutPicload+=500;
if (timeoutPicload <timeout_Picload)
setTimeout( "loadingNowPreImg() ",500);
else{
timeoutPicload=0;
obj_imgLoadDiv.style.display= "none ";
NextPic();
}
}
else{
timeoutPicload=0;
obj_imgLoadDiv.style.display= "none ";
SlidePic(gIndex)
}
}
function SlidePic(index){
gIndex = index;
preImages=new Image();
preImages.src = sPicArr[index][0];
load_pics(index);//载入后张
if (IE){
if (!preImages.complete){
loadingNowPreImg();//载
return;
}
}
Setjindutiao_i=0;
clearTimeout(sid2);
Setjindutiao();
if ( 'Microsoft Internet Explorer ' == navigator.appName)
{
document.images[ "ImgImageShow "].filters[0].transition=23;
document.images[ "ImgImageShow "].filters.item(0).Apply();
}
GetObj( "ImgImageShow ").src = sPicArr[index][0];
GetObj( "ImgImageShow ").alt = sPicArr[index][1];
GetObj( "ImgImageShow ").title = sPicArr[index][1];
//GetObj( "slidePicLink ").href = "# ";
GetObj( "DivImageShowhidden ").value=sPicArr[index][3];
//if((index+1) <sPicArr.length) plPic.src = sPicArr[index+1][0];//preload;
GetObj( "NowPlaying ").innerHTML =(int_imgFromServer).toString()+ "/ "+maxPage_int.toString();
if ( 'Microsoft Internet Explorer ' == navigator.appName)
{
document.images[ "ImgImageShow "].filters.item(0).play();
}
}
//-->
</script>
[解决办法]
楼上贴得这是什么一大堆,楼主不是说是FORM了么,不是WEB的,没脚本的。。
[解决办法]
试一下图片双缓冲
在Form里面加入
this.SetStyle(ControlStyles.OptimizedDoubleBuffer, true);
看看效果是不是好些
[解决办法]
帮顶一下
[解决办法]
Checkbox.BackColor = Color.Transparent 这个不行么?
[解决办法]
建议用一个PictureBox充满Form,然后将所有的CheckBox放在PictureBox上,换背景时只要更换PictureBox的Image就行了,速度应该会快点
[解决办法]
无奈,我今天试了好多办法,还是没解决,下班了,明天继续搞!
[解决办法]
cooltest1@163.com 把你的案例我 你看看