復(fù)制文件夾不用剪貼板,使用系統(tǒng)文件操作對(duì)象就好了
成都創(chuàng)新互聯(lián)公司提供高防主機(jī)、云服務(wù)器、香港服務(wù)器、西部信息中心等
CreateObject("scripting.filesystemobject").copyfolder "c:\Program Files", "D:\Program Files"
參考一下下面這段代碼:
‘?首先picturebox1?加載一張圖像
FolderBrowserDialog1.Description?=?"選擇圖片文件夾導(dǎo)入圖片"
FolderBrowserDialog1.ShowDialog()
path?=?FolderBrowserDialog1.SelectedPath()
If?path?=?""?Then?Return
strSrcFile?=?Dir(path??"\*.tif")
PictureBox1.Image?=?Image.FromFile(path??"\"??strSrcFile)
’??然后再在picturebox1中用graphic畫圖而不清空原圖像
'?建立一個(gè)畫圖對(duì)象
Dim?g?As?Graphics?=?Me.PictureBox1.CreateGraphics
‘?定義畫筆
Dim?myPen?As?System.Drawing.Pen?=?New?System.Drawing.Pen(Color.Blue)
’?畫出矩形框并且填充顏色(顏色保持50%的透明度,使得下面原來(lái)的圖片背景能看得到)
g.DrawRectangle(myPen,?New?System.Drawing.Rectangle(50,?50,?30,?20))
g.FillRectangle(New?SolidBrush(Color.FromArgb(50,?Color.YellowGreen)),?New?System.Drawing.Rectangle(50,?50,?30,?20))
'?最后釋放畫圖對(duì)象
g.Dispose()
效果大致如下圖所示:
執(zhí)行存儲(chǔ)過(guò)程調(diào)用的是ADO.net
返回的結(jié)果集是一個(gè)DataSet對(duì)象。 如果不是,請(qǐng)檢查下你的數(shù)據(jù)連接庫(kù),改下代碼。
如果存儲(chǔ)過(guò)程返回的是兩個(gè)結(jié)果集,那么返回的DataSet就有兩個(gè)DataTable對(duì)象。
調(diào)用的時(shí)候 只需要
DataSet ds=dbHelper.RunProcedure("Web_pGetDataPager");//假設(shè)的返回dataset對(duì)象的執(zhí)行存儲(chǔ)過(guò)程的方法。
ds.Tables[0] 就是第一個(gè)結(jié)果集
ds.Tables[1] 就是第二個(gè)結(jié)果集
//弱綁定第二個(gè)結(jié)果集 就是下面這樣
Datagridview.DataSource=ds.Table[1];
Datagridview.DataBind();
對(duì) Range 對(duì)象做 Copy 方法,要注意 Range 要連續(xù)的、成矩形選擇的。
例如像:A1:C5 可以復(fù)制,
例如像:A1:C5, A10:C15 就不能復(fù)制。
還要注意一點(diǎn):對(duì) Range 對(duì)象進(jìn)行操作的話,所在工作表先要激活。
someRange.Worksheet.Activate
如果還有問(wèn)題的話,可以把對(duì) Excel 操作的代碼提取到 Excel VBA 環(huán)境下調(diào)試好了再移植回去。
這段代碼的問(wèn)題是:
首先f(wàn)or each循環(huán)在files里查找文件對(duì)象,但是f變量聲明為string了,無(wú)法讓它獲取對(duì)象;
然后file.copy的變量file沒(méi)有任何聲明,也沒(méi)有初始化賦值等;
最后,整個(gè)for each循環(huán)里查找集合files的文件,由于初始化的循環(huán)計(jì)數(shù)器仍然按照最初設(shè)定的文件數(shù)目向后遞增(文件地址),但是實(shí)際文件刪除一部分,后續(xù)的文件位置就不能跟循環(huán)計(jì)數(shù)指針匹配了,所以默認(rèn)為查找不到文件,將會(huì)報(bào)錯(cuò)。一般的做法時(shí)把復(fù)制和刪除分別放在2次循環(huán)里,第一次只復(fù)制文件,第二次才去刪除。