Visualizzazione dei risultati da 1 a 7 su 7
  1. #1

    Catturare e salvare schermate con un tasto

    Ciao ragazzi!
    Sono un newbuy di VB6!
    Avrei bisogno di creare un programmino che sia sempre in primo piano, che faccia catture multiple di schermate ad ogni pressione di un pulsante (o perchè no di un tasto della tastiera), e che le salvi in una cartella da me scelta, senza sovrascrivere quelle precedentemente catturate.
    Insomma, un piccolo form con soli 2 tasti: "Cattura" e "Seleziona Cartella".
    Siccome da quel che ho letto in giro bisogna mettersi a disturbare le API, (ed ho paura che mi pungano :P), non so dove mettere le mani, qualcuno può darmi un aiuto?
    Grazie mille!

  2. #2

  3. #3
    Moderatore di Programmazione L'avatar di alka
    Registrato dal
    Oct 2001
    residenza
    Reggio Emilia
    Messaggi
    24,463

    Moderazione

    Originariamente inviato da tetsuja
    Ciao ragazzi!
    Sono un newbuy di VB6!
    Il linguaggio va indicato anche nel titolo, come da Regolamento.

    Qui l'ho aggiunto io, tienilo a mente per il futuro.
    MARCO BREVEGLIERI
    Software and Web Developer, Teacher and Consultant

    Home | Blog | Delphi Podcast | Twitch | Altro...

  4. #4
    Ok grazie ragazzi! E scusate per il titolo omesso!
    Ho trovato questo programmino qui che diciamo è ciò che cercavo (si chiama Tiny Screen Capture).
    L'unica cosa è, se possibile, fare in modo che salvi in JPG anzichè BMP... come si può fare?
    Qui c'è il pezzo di codice che credo interessi:

    'save-to path
    Public Path As String
    'number incrementation for filename
    Public increment As Integer

    Private Sub cmdExit_Click()
    Unload Me
    End Sub

    Private Sub Form_Activate()
    SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE
    End Sub

    Private Sub Form_Load()
    'keep window on top
    SetWindowPos Me.hWnd, HWND_TOPMOST, 0, 0, 0, 0, SWP_NOACTIVATE Or SWP_SHOWWINDOW Or SWP_NOMOVE Or SWP_NOSIZE




    'Call SetWindowPos(Me.hWnd, HWND_TOPMOST, 0&, 0&, 0&, 0&, FLAGS)
    'set save-to path
    If Right(App.Path, 1) = "\" Then
    Path = App.Path
    Else
    Path = App.Path & "\"
    End If

    End Sub
    Private Sub cmdcap_Click()
    Dim handc As Long, h As Long, w As Long, r As RECT, continue As Boolean, filepath As String

    frmCap.WindowState = vbMinimized


    Handle = GetDesktopWindow
    'get dc of window
    handc = GetDC(Val(Handle))

    'get window's dimensions
    GetWindowRect Val(Handle), r
    w = r.Right - r.Left
    h = r.Bottom - r.Top
    piccap.Width = w
    piccap.Height = h

    'paint window into piccap
    BitBlt piccap.hDC, 0, 0, w, h, handc, 0, 0, SRCCOPY

    'if file exists, add to increment until a new file is created.
    continue = True
    Do
    filepath = Path & CStr(increment) & ".bmp"
    If Dir(filepath) <> "" Then
    increment = increment + 1
    Else
    continue = False
    End If
    Loop Until Not continue

    'save the picture in piccap
    SavePicture piccap.Image, filepath


    frmCap.WindowState = vbNormal
    End Sub

    Private Sub piccap_Click()

    End Sub

  5. #5
    Utente di HTML.it L'avatar di gibra
    Registrato dal
    Apr 2008
    residenza
    Italy
    Messaggi
    4,244
    Ecco un progetto che converte una bitmap in formato JPG, con la possibilità di indicare anche la percentuale di compressione:

    BMP 2 JPG
    http://nuke.vbcorner.net/Progetti/VB...9/Default.aspx

    P.S.
    La prossima volta che posti del codice ricordati che va indicato usando il tag CODE (come da Regolamento!) che, a quanto pare non hai proprio letto.
    Ti sei già beccato una moderazione. Attento...



  6. #6
    ...hem, avevo letto la cosa del CODE, ma purtroppo me lo inseriva tutto in una sola riga, ed era impossibile da decifrare poi!
    Guardo subitissimo il tuo link, grazie mille!

  7. #7
    Fantastico! Credi che c'è un modo per inserire il convertitore direttamente nel programmino di cattura in modo che salvi direttamente in JPG?
    Grrazie ancora!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.