Merhaba Arkadaslar
VB.net ile ScreenShot Projesi basladim
Bi konuda devam edemiorum.
2.Monitor dan Screenshot yapmak istiorum
misal
Formload da 2. veya daha Fazla Monitor tariorum ve oluyor
VB.Net:
If Screen.AllScreens.Length > 1 Then
monitorvarcheck.Enabled = True
Else
monitorvarcheck.Enabled = False
End If
2.Formu 2.Monitorda aciorum buda oluyor
VB.Net:
Dim ekran As Screen
ekran = Screen.AllScreens(1)
Form2.StartPosition = FormStartPosition.Manual
Form2.WindowState = FormWindowState.Maximized
Form2.Location = ekran.Bounds.Location
Simdi 2. Formda Görünmez bir Form var ve Paint ile o Formun üstünde Mouse Event ile bir Rectangle
olusturuyorum ve bu Rectangle icerigini Screenshotlamak istiorum
bana sadece 1. Monitorda yaptigim Rectanle posisyonun icerigini gösterior
1.Monitor da hic bir SIkIntI yok
VB.Net:
Private Function MakeScreenShot() As Bitmap
Dim Bmp As Bitmap = New Bitmap(rect1.Width, rect1.Height)
Using Gra As Graphics = Graphics.FromImage(Bmp)
Gra.CopyFromScreen(rect1.Location, New Point(0, 0), rect1.Size)
End Using
' Bitmap an Funktion übergeben
Return Bmp
Private Sub Bereich_Makieren_MouseUp(sender As Object, e As MouseEventArgs) Handles Me.MouseUp
' Mouse sol click birakildiginda Rectangle icerigini yani karenin icerigini Pictureboxa gönderiror
IsMouseDown = False
Dim shot As Bitmap
Me.Hide()
Threading.Thread.CurrentThread.Sleep(500)
shot = MakeScreenShot()
Me.Close()
Form1.Show()
Form1.PictureBox1.Image = shot
evet Arkadaslar
Sorunum Ikinci Monitor dan ayni 1.Monitordaki gibi Olusturdum Rectangle icerini Form1 deki Picturebox a yapistirmasi.
Simdiden Yardim lariniz icin Tessekkürler
Türkcem icin kusura bakmayin