PrintScreen - jak udělat screenshot
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

PrintScreen - jak udělat screenshotPrintScreen - jak udělat screenshot

 

PrintScreen - jak udělat screenshot

Google       Google       6. 10. 2007       20 570×

Chcete si vytvořit program, který udělá screenshot obrazovky?

Reklama
Reklama

V tomto díle seriálu k Visual Basicu si zkusíme vytvořit program, který bude snímat obrázek plochy a poté ukládat na námi zvolené místo. Budeme snímat celou plochu a poté ji ukládat ve formátu BMP.

Na formulář umístěte:

  • 3× Command Button (tlačítko)
  • 1× Picture Box
  • 1× Label (popisek)
  • 1× TextBox
  • 1× Common Dialog

Rozmístěte si ovládací prvky tak, jak jsou na obrázku:

Teď již budeme psát zdrojový kód k naší aplikaci.

Do deklarační části napište

Private Declare Sub keybd_event Lib "user32" (ByVal bVk As Byte, ByVal bScan As Byte, ByVal dwFlags As Long, ByVal dwExtraInfo As Long)
Private Const VK_SNAPSHOT = &H2C  'Snapshot button

Máme nadeklarováno a pustíme se do zbytku kódu.

Private Sub cmdActWin_Click() 
    Me.WindowState = vbMinimized
    Me.Hide
    
    Pause txtPause
    Clipboard.Clear
    Call keybd_event(VK_SNAPSHOT, 1, 0, 0)
    
    DoEvents  
    
    Picture1.Picture = Clipboard.GetData()
    
    Me.Show
    Me.WindowState = vbNormal
    cmdSave.Enabled = True
End Sub

Private Sub cmdClear_Click() 
    'vyčistí PictureBox
    Set Picture1.Picture = Nothing
    cmdSave.Enabled = False    
End Sub

Private Sub cmdSave_Click()  
    'dialog pro uložení obrázku
    On Error GoTo Error
    With CD1
        .DialogTitle = "Uložit obrázek..."
        .FileName = "screenshot"
        .Filter = "Bitmap (*.bmp)|*.bmp"
        .CancelError = True
        .Flags = &H2 
        .ShowSave
        If .FileName = "" Then GoTo Error
        'uloží obrázek jako Bitmapu
        SavePicture Picture1.Picture, .FileName
    End With
    
Error: 
msgbox "chyba"
End Sub

Sub Pause(interval)
    'prodleva před snímáním obrázku
    Current = Timer
    Do While Timer - Current < Val(interval)
        DoEvents
    Loop   
End Sub

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Jan MalýAutor programuje ve VB, HTML, CSS. Zajímá se o grafiku, fotografování
Web     Twitter     Facebook    

Nové články

Obrázek ke článku RAD Studio a Windows Store

RAD Studio a Windows Store

RAD Studio je první vývojové prostředí se zabudovanou podporou balení aplikací typu Win32 a Win64 pro jejich umístění a šíření prostřednictvím Windows 10 Store.

Reklama
Reklama
Obrázek ke článku Testujte na 2 400+ Android a iOS zařízení

Testujte na 2 400+ Android a iOS zařízení

V dnešní době, kdy většina softwaru pro mobilní aplikace je tvořena a distribuována průběžně, mnohdy do celého světa je třeba zajistit také průběžnou automatizaci testování mobilního softwaru. V případě mobilních aplikací pro Android a iOS začíná být problém, jak testovat na obrovském množství kombinací HW variant, rozměrů, edic operačních systémů různých výrobců v různých částech světa na reálných zařízení. Simulátory a emulátory nejsou většinou to pravé. Pokud již testuji, jak si udělat vlastní beta distribuci opravdovým reálným testerům napříč platformami?

Obrázek ke článku Funkcie main vo Windows API

Funkcie main vo Windows API

V tretej časti seriálu o Windows API budeme hovoriť o funkčných prototypoch main. Funkčný prototyp je tvorený názvom funkcie a typom signatúry, pričom sa vynecháva telo funkcie. 

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý