'模塊中
創(chuàng)新互聯(lián)公司長期為近1000家客戶提供的網(wǎng)站建設(shè)服務(wù),團隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為正安企業(yè)提供專業(yè)的網(wǎng)站設(shè)計制作、成都網(wǎng)站制作,正安網(wǎng)站改版等技術(shù)服務(wù)。擁有10年豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。
Declare Function GetDC Lib "user32" (ByVal hwnd As Long) _
As Long
Public Declare Function ReleaseDC Lib "user32" (ByVal hwnd As Long, ByVal hdc As Long) As Long
Declare Function BitBlt Lib "gdi32" _
(ByVal hDestDC As Long, ByVal x As Long, _
ByVal y As Long, ByVal nWidth As Long, _
ByVal nHeight As Long, ByVal hSrcDC As Long, _
ByVal xSrc As Long, ByVal ySrc As Long, _
ByVal dwRop As Long) As Long
'form1中
Private Sub Command1_Click()
Dim hDCtmp As Long, picWidth As Double, picHeight As Double
Dim x As Double
Dim y As Double
x = Val(Text2.Text)
y = Val(Text3.Text)
picWidth = Val(Text3.Text)
picHeight = Val(Text4.Text)
hDCtmp = GetDC(0)
BitBlt Picture1.hdc, 0, 0, picWidth, picHeight, hDCtmp, x, y, vbSrcCopy
ReleaseDC 0, hDCtmp
End Sub
目的: 將屏幕按照指定坐標(biāo)和大小進行截取成圖,在picture1顯示
問題: 大小是相同了,為什么截取的坐標(biāo)不對,只是屏幕上的左上
相信大家都用過QQ截圖功能。不過很多人并沒有真正掌握好它的用法。將QQ截圖與其它截屏和制圖軟件配合使用,會有意想不到的效果。
獲取顏色的RGB值
我們在編輯圖片或網(wǎng)頁的時候,經(jīng)常需要獲取某種顏色的“RGB值”,所以很多人都安裝了第三方的顏色吸取工具。其時用QQ截圖鍵即可獲取屏幕上任意顏色的RGB值。
當(dāng)按下“Ctrl+Shift+A”彈出“截圖”提示框時,提示框中的“當(dāng)前像素RGB”即為當(dāng)前鼠標(biāo)屏幕位置的顏色RGB值,將鼠標(biāo)移動到你想查看的屏幕顏色上即可獲得相應(yīng)的RGB值(如圖1)。
圖1精確截取圖片大小
有時我們對要使用的截圖尺寸有嚴(yán)格要求,比如論壇簽名或QQ頭像等。用QQ截圖鍵可以按尺寸精確截取,一步到位無需再進行后期裁剪了。
按下QQ截圖鍵,按住鼠標(biāo)不放選取截取范圍時,在鼠標(biāo)上方會有一個信息框顯示當(dāng)前范圍的詳細(xì)信息,其中“矩形大小”就是以像素來表示的圖片的尺寸大小,括號內(nèi)的數(shù)字分別表示的是長和高(如圖2)。松開鼠標(biāo)調(diào)整截圖框時,對照“矩形大小”就可以按需要的尺寸來精確截圖范圍,然后用鼠標(biāo)點住截圖框?qū)⒔貓D框拖到要截取的圖片上,雙擊即可獲得所需尺寸的圖片了。
圖2圖片拼貼好幫手
大部分的截圖軟件一次只能截取一張圖片,當(dāng)要截取多張圖片并進行拼貼組合時,就需要一張一張截取全部保存后再進行拼貼操作,非常麻煩。
我們知道用QQ截圖鍵截取的圖片可以在任一個可以粘貼圖片的程序中使用,這樣只需用截圖軟件進行一次截圖操作,剩下的圖片用QQ截圖鍵來截取,然后依次粘貼到截圖軟件的窗口中即可快速進行拼貼操作了,是不是很方便啊。
小提示:QQ截圖鍵無需打開聊天窗口即可使用,截取的圖片在任一可粘貼圖片的程序窗口中如畫圖、Word等,使用“粘貼”命令即可使用
Me.Height = My.Computer.Screen.Bounds.Height
Me.Width = My.Computer.Screen.Bounds.Width
這是設(shè)置窗體的長寬和屏幕的分辨率一樣大小,相當(dāng)于全屏。
如果Me.WindowState=FormWindowState.Maximized的話,只是單純的將窗體最大化,但恢復(fù)窗口大小后窗體的大小實際上還和原來一樣大。
VB.NET的特點
1.真正成為面向?qū)ο笠约爸С掷^承性的語言。
2.窗體設(shè)計器支持可視化繼承,并且包含了許多新的特性,比如自動改變窗體大小、資源本地化支持、數(shù)據(jù)類工具內(nèi)在支持XML數(shù)據(jù)。
3.直接建立在.NET的框架結(jié)構(gòu)上,因此開發(fā)人員可以充分利用所有.NET平臺特性,也可以與其他的.NET語言交互。
4.為Windows應(yīng)用程序提供了XCOPY部署,開發(fā)者不再需要為DLL的版本問題擔(dān)憂。
StartPosition屬性有如下選項,分別含義如下:
CenterParent 窗體在其父窗體中居中。
CenterScreen 窗體在當(dāng)前顯示窗口中居中,其尺寸在窗體大小中指定。
Manual 窗體的位置由Location屬性確定。
WindowsDefaultBounds 窗體定位在Windows默認(rèn)位置,其邊界也由Windows默認(rèn)決定。
WindowsDefaultLocation 窗體定位在Windows默認(rèn)位置,其尺寸在窗體大小中指定。
CenterScreen的意思并不是屏幕居中(是相對的),它是在"當(dāng)前顯示窗口"中居中。當(dāng)用Show()方法時應(yīng)選擇CenterScreen,用ShowDialog()方法時應(yīng)選擇CenterParent,這樣才能讓要顯示的窗口居中。
Me.Height = My.Computer.Screen.Bounds.Height\x0d\x0aMe.Width = My.Computer.Screen.Bounds.Width\x0d\x0a這是設(shè)置窗體的長寬和屏幕的分辨率一樣大小,相當(dāng)于全屏。\x0d\x0a如果Me.WindowState=FormWindowState.Maximized的話,只是單純的將窗體最大化,但恢復(fù)窗口大小后窗體的大小實際上還和原來一樣大。