注意:访问本站需要Cookie和JavaScript支持!请设置您的浏览器! 打开购物车 查看留言付款方式联系我们
初中电子 单片机教材一 单片机教材二
搜索上次看见的商品或文章:
商品名、介绍 文章名、内容
首页 电子入门 学单片机 免费资源 下载中心 商品列表 象棋在线 在线绘图 加盟五一 加入收藏 设为首页
本站推荐:
如何把窗体里的内容存为一个位图
文章长度[4863] 加入时间[2007/3/19] 更新时间[2021/6/13 18:39:05] 级别[0] [评论] [收藏]

cndigs.com掘客园--程序员的掘客网(发掘、推荐软件开发资源,分享、交流技术开发心得)  cndigs.com掘客园--程序员的掘客网(发掘、推荐软件开发资源,分享、交流技术开发心得) 
主  题: 如何把窗体里的内容存为一个位图
作  者: yimain
等  级:  
信 誉 值: 100
所属社区: VB API
问题点数: 100
回复次数: 9
发表时间: 2005-10-30 18:57:33
 
 
 
           

我在窗体中放了很多picture控件,现在我想把这个窗体的内容存为一张位图,包含已显示的picture控件在内的内容,未显示则不包含在内。或者可以指定包含那些控件。


          
yimain 残雪   信誉: 100 2005-10-30 18:58:51 得分:  0
 
                 

请问各位高手是否有方便快捷的方法?


                
Top 
szjhxu 天野   信誉: 99 2005-10-30 20:41:27 得分:  10
 
                 

可以用Alt+PrtSc来复制运行后的屏幕,然后到画图程序中粘贴.

哈,不知你要的是不是这样的.


                
Top 
northwolves 狼行天下   信誉: 125 2005-10-30 22:51:18 得分:  30
 
                 

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal Scan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Const KEYEVENTF_KEYUP = &H2
Private Const VK_SNAPSHOT = &H2C
Private Const VK_MENU = &H12


Private Sub Form_Click()
If Dir("d:\123.bmp") > "" Then Kill "d:\123.bmp" '
Clipboard.Clear '清空剪切板
        keybd_event VK_MENU, 0, 0, 0
        keybd_event VK_SNAPSHOT, 0, 0, 0
        keybd_event VK_SNAPSHOT, 0, KEYEVENTF_KEYUP, 0
        keybd_event VK_MENU, 0, KEYEVENTF_KEYUP, 0 '复制到剪切板
SavePicture Clipboard.GetData, "d:\123.bmp" '另存为
Shell "mspaint.exe d:\123.bmp", vbNormalFocus '显示成果

End Sub

 

                
Top 
lxcy 猫   信誉: 80 2005-10-30 23:05:39 得分:  10
 
                 

得到窗体坐标,拷贝屏幕就可以了吧。


                
Top 
yimain 残雪   信誉: 100 2005-10-31 20:45:22 得分:  0
 
                 

上面的拷贝是连整个标题栏都拷下来,能不能只拷指定的区域?


                
Top 
yimain 残雪   信誉: 100 2005-10-31 20:46:42 得分:  0
 
                 

还有拷贝时是把所有显示的内容都拷贝了下来,能不能排除某些picture的内容不拷贝在内?


                
Top 
jack20042005    信誉: 100 2005-10-31 21:52:50 得分:  5
 
                 

 

                
Top 
rainstormmaster 暴风雨 v2.0   信誉: 234 2005-11-4 21:34:54 得分:  10
 
                 

//还有拷贝时是把所有显示的内容都拷贝了下来,能不能排除某些picture的内容不拷贝在内?

拷贝时你把不需要拷贝的控件设为隐藏,拷贝结束后恢复显示即可


                
Top 
fishmans 金脚指   信誉: 94 2005-11-5 3:54:02 得分:  35
 
                 

Private 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

Private Sub Command1_Click()
picture1.autoredraw=true
  BitBlt Picture1.hDC, 0, 0, Me.ScaleWidth, Me.ScaleHeight, Me.hDC, 0, 0, vbSrcCopy
  savepicture picture1.image ,"d:\dd.bmp"
End Sub

 

1、 本站不保证以上观点正确,就算是本站原创作品,本站也不保证内容正确。
2、如果您拥有本文版权,并且不想在本站转载,请书面通知本站立即删除并且向您公开道歉! 以上可能是本站收集或者转载的文章,本站可能没有文章中的元件或产品,如果您需要类似的商品请 点这里查看商品列表!
本站协议 | 版权信息 |  关于我们 |  本站地图 |  营业执照 |  发票说明 |  付款方式 |  联系方式
深圳市宝安区西乡五壹电子商行——粤ICP备16073394号-1;地址:深圳西乡河西四坊183号;邮编:518102
E-mail:51dz$163.com($改为@);Tel:(0755)27947428
工作时间:9:30-12:00和13:30-17:30和18:30-20:30,无人接听时可以再打手机13537585389