查看單個文章
舊 2005-06-24, 12:32 PM   #1
魔術王子
版區管理員
 
魔術王子 的頭像
榮譽勳章
UID - 115097
在線等級: 級別:42 | 在線時長:2020小時 | 升級還需:1小時級別:42 | 在線時長:2020小時 | 升級還需:1小時
註冊日期: 2004-01-13
住址: 魔術學園
文章: 3051
精華: 0
現金: 15227 金幣
資產: 2678857 金幣
預設 C++ Bulider的螢幕抓取程式

//Unit1.cpp
語法:
//---------------------------------------------------------------------------

#include <vcl.h>
#pragma hdrstop

#include <clipbrd.hpp>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
{
}
//---------------------------------------------------------------------------

void __fastcall TForm1::Button1Click(TObject *Sender)
{
    HDC DC;
    WindowState = wsMinimized;
    DC = GetDC(0);
    Image1->Width=Screen->Width;
    Image1->Height=Screen->Height;
    BitBlt(Image1->Canvas->Handle, 0, 0, Screen->Width, Screen->Height, DC, 0, 0, SRCCOPY);
    Image1->Refresh();
    ReleaseDC(0, DC);
    WindowState = wsNormal;
    Button2->Enabled=true;
    Button3->Enabled=true;}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button2Click(TObject *Sender)
{
    Clipboard()->Assign(Image1->Picture->Bitmap);     
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button3Click(TObject *Sender)
{
    if (SavePictureDialog1->Execute())
        Image1->Picture->SaveToFile(SavePictureDialog1->FileName);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::Button4Click(TObject *Sender)
{
    Close();    
}
//---------------------------------------------------------------------------
PS:粗體部分需自行KeyIn
魔術王子 目前離線  
送花文章: 1540, 收花文章: 1574 篇, 收花: 3928 次
回覆時引用此帖