Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - .NET

Страница: 1 |

 

  Вопрос: Помогите снять скриншот с формы Добавлено: 30.05.11 16:51  

Автор вопроса:  Alex Bakanov | Web-сайт: hstudio.ucoz.com | ICQ: 7215215 
Привет всем! Просил гугл помочь мне с этой проблемой , но там либо для 6.5 , либо снятие всего экрана. А мне надо лишь снятия скриншота с моей формы , либо же , сохранить форму как изображение. помогите пожалуйста!

Ответить

  Ответы Всего ответов: 15  

Номер ответа: 1
Автор ответа:
 Alex Bakanov



ICQ: 7215215 

Вопросов: 7
Ответов: 21
 Web-сайт: hstudio.ucoz.com
 Профиль | | #1
Добавлено: 30.05.11 17:04
программу почти закончил,а вот только осталось сделать скриншт с формы и всё,а тут такое :

Ответить

Номер ответа: 2
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #2 Добавлено: 30.05.11 21:51
alt-printscreen с формы снимает

Ответить

Номер ответа: 3
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #3 Добавлено: 30.05.11 23:08
да все просто..
1. делаешь снимок всего экрана
2. зная размеры и положение формы вырезаешь нужную тебе часть
3. наслаждаешься

Ответить

Номер ответа: 4
Автор ответа:
 Alex Bakanov



ICQ: 7215215 

Вопросов: 7
Ответов: 21
 Web-сайт: hstudio.ucoz.com
 Профиль | | #4
Добавлено: 30.05.11 23:12
да я об этом думал, не понимаю как его обрезать на нужных частях. Может кто-нибудь подскажет новичку?

Ответить

Номер ответа: 5
Автор ответа:
 DimBi



Вопросов: 15
Ответов: 55
 Профиль | | #5 Добавлено: 30.05.11 23:28
какая у Вас операционная система?
если Windows 7 - используй "ножницы" - просто вырезаешь нужную часть изображения экрана и сохраняешь как "Снимок.jpg"
если Windows XP - уже написали - клавиша PrintScreen, затем открываешь Paint и вставляешь из буфера (потом вырезаешь как надо).
как его обрезать на нужных частях.
- если владеете, то Adobe Photoshop, если нет - Paint

Ответить

Номер ответа: 6
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #6 Добавлено: 31.05.11 00:28
если Windows 7 - используй "ножницы"

:)))))))))) аффтар,жги еще!

Ответить

Номер ответа: 7
Автор ответа:
 EROS



Вопросов: 58
Ответов: 4255
 Профиль | | #7 Добавлено: 31.05.11 00:30
ну давай по частям..
Сделай снимок экрана и сохрани его в файл.. код в студию. Примеров в инете полно.. найдешь сам?

Ответить

Номер ответа: 8
Автор ответа:
 DimBi



Вопросов: 15
Ответов: 55
 Профиль | | #8 Добавлено: 31.05.11 00:48
Чего то не понял...
просят
надо лишь снятия скриншота с моей формы , либо же , сохранить форму как изображение

Какой
код в студию
?

Ответить

Номер ответа: 9
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #9 Добавлено: 31.05.11 08:03
Еще раз, для слепых.
Alt-PrintScreen делает скрин активной формы.
Затем сохранять картинку из буфера.

Ответить

Номер ответа: 10
Автор ответа:
 Alex Bakanov



ICQ: 7215215 

Вопросов: 7
Ответов: 21
 Web-сайт: hstudio.ucoz.com
 Профиль | | #10
Добавлено: 31.05.11 13:25
так, значит:
        Call keybd_event(System.Windows.Forms.Keys.Snapshot, 0, 0, 0)
        System.Threading.Thread.Sleep(200) ' To have time to catch the clipboard
        SaveScreen("test.jpg";)
сохранение.
  1.  
  2.     Public Function SaveScreen(ByVal theFile As String) As Boolean
  3.         Dim data As IDataObject
  4.         data = Clipboard.GetDataObject()
  5.         Dim bmap As Bitmap
  6.         If data.GetDataPresent(GetType(System.Drawing.Bitmap)) Then
  7.             bmap = CType(data.GetData(GetType(System.Drawing.Bitmap)), Bitmap)
  8.             Me.PictureBox1.Image = bmap
  9.             Me.PictureBox1.Image.Save(theFile, Imaging.ImageFormat.Jpeg)
  10.         End If
  11.     End Function

Ответить

Номер ответа: 11
Автор ответа:
 Дмитрий Юпатов



Вопросов: 4
Ответов: 457
 Web-сайт: cargomaster.at.ua/
 Профиль | | #11
Добавлено: 31.05.11 19:48
Вот скрин со своей же формы:
Кинь только Button1
  1. Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
  2.         Dim bmp As Bitmap = New Bitmap(Me.Size.Width, Me.Size.Height)
  3.         Dim g As Graphics = Graphics.FromImage(bmp)
  4.         g.CopyFromScreen(Me.Location.X, Me.Location.Y, 0, 0, Me.Size)
  5.         ' показываем на форме
  6.         Me.BackgroundImage = bmp
  7.         Me.BackgroundImageLayout = ImageLayout.Center
  8.         'сохраняем в файл
  9.         bmp.Save("C:/MyScreen.bmp", Imaging.ImageFormat.Bmp)
  10.         'теперь немного увеличим размер формы, чтобы все красиво появилось:)
  11.         Dim s As Size = Me.Size
  12.         s.Width = CInt(s.Width * 1.2)
  13.         s.Height = CInt(s.Height * 1.2)
  14.         Me.Size = s
  15.         'итого на форме мы получили скриншот нашей формы. Также он сохранен на корне диска С под именем MyScreen.bmp
  16.         ' ну и напоследок открываем файл со скриншотом
  17.         Process.Start("C:/MyScreen.bmp")
  18.     End Sub

Ответить

Номер ответа: 12
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #12 Добавлено: 31.05.11 21:11
оба, это ж .NET? Ну, тогда у вас древнегреческие и древнеегипетские способы создания картинки формы.
Быстренько, не палимся, что ниче не знаем, и читаем MSDN:

Control.DrawToBitmap Method: Supports rendering to the specified bitmap.
Принадлежит инстансам класса Control.

(цопирайт) http://msdn.microsoft.com/en-us/library/system.windows.forms.control.drawtobitmap.aspx

Ответить

Номер ответа: 13
Автор ответа:
 Дмитрий Юпатов



Вопросов: 4
Ответов: 457
 Web-сайт: cargomaster.at.ua/
 Профиль | | #13
Добавлено: 31.05.11 22:26
ну это само собой :). Но copyfromscreen делает именно скриншот, и не обязательно с формы. С произвольного прямоугольника в пределах экрана.

Ответить

Номер ответа: 14
Автор ответа:
 AgentFire



ICQ: 192496851 

Вопросов: 75
Ответов: 3178
 Профиль | | #14 Добавлено: 01.06.11 13:13
читал топик? ему надо с ЕГО формы снять.

Ответить

Номер ответа: 15
Автор ответа:
 Дмитрий Юпатов



Вопросов: 4
Ответов: 457
 Web-сайт: cargomaster.at.ua/
 Профиль | | #15
Добавлено: 01.06.11 23:49
хм... слово "моей" как-то проскользнуло мимо взгляда.

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам