Gerçekten ekranda görüntülemeden winforms bir kontrol ekran görüntüsü almak mümkün mü? Bir webBrowser bileşeni hakkında nasıl?bir winforms kontrol ekran görüntüsü C#
5
A
cevap
11
Evet. Bu yapılabilir.
Bunu yapmak için bir örnek program çektim. Adlandırma kurallarını ve kod düzenimi bağışla, bu çok hızlı bir şekilde çırpıldı. Gereksinimlerinize daha iyi uyacak şekilde değiştirebilirsiniz, ancak bu temelleri gösterir.
- button1: varsayılan ayarlarla Düğme Üç kontrolleri ile tek form var.
- button2: false görünür özellik kümesi ve set Metin ile Düğme için "button2 - görünmeyen"
- webBrowser1: false olarak ayarlanmış görünürlük ile WebBrowser denetimi, uyuyor sadece bu yüzden 250, 101 (için boyutunu ayarlamak . benim cevabın altındaki yakalama baktığınızda benim form üzerinde boyut alakalı buna göre boyutu o gerekir) burada
Form1 kod:..
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Drawing.Imaging;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace WindowsFormsApplication1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
PrintInvisibleControl(button2, @"C:\button.jpg");
PrintInvisibleControl(webBrowser1, @"C:\webbrowser.jpg");
}
private void PrintInvisibleControl(Control myControl, string filename)
{
Graphics g = myControl.CreateGraphics();
//new bitmap object to save the image
Bitmap bmp = new Bitmap(myControl.Width, myControl.Height);
//Drawing control to the bitmap
myControl.DrawToBitmap(bmp, new Rectangle(0, 0, myControl.Width, myControl.Height));
bmp.Save(filename, ImageFormat.Jpeg);
bmp.Dispose();
}
private void Form1_Load(object sender, EventArgs e)
{
webBrowser1.Navigate("http://www.microsoft.com");
}
}
}
Bu aşağıdaki yakalamalar ile sonuçlandı:
İlginç bir soru, fakat içinde Böyle bir işlem yapmanız gerekir neden -+4
Bir şey bana açık değil. Grafik g = myControl.CreateGraphics(); nasıl kullanılır? – beppe9000
İlgili konular
- 1. Ekran Yerleşimi İçin Ekran Görüntüsü
- 2. Ekran Görüntüsü
- 3. Bu bir kontrol mi? (C# Winforms)
- 4. Ekran görüntüsü nasıl alınır?
- 5. C# WPF ekran görüntüsü SnippingTool efekti
- 6. Sanal ekran görüntüsü screenshot
- 7. Ekran Görüntüsü Eklentisi Oluşturma
- 8. Ekran Görüntüsü OpenStreetMap
- 9. HTML5 video ekran görüntüsü
- 10. Ekran görüntüsü alın
- 11. C# WinForms
- 12. Idea Intellij ile Ekran görüntüsü
- 13. Ekran Görüntüsü CAEmitterLayer ile görüntüleme
- 14. Ekran Görüntüsü kullanarak ashx Handler
- 15. Div'u bir Görüntü/Ekran görüntüsü olarak paylaşın?
- 16. Tespit oyunu ekran görüntüsü analizi ile kesmek C#
- 17. iPhone/iPad'in ekran görüntüsü Xamarin.iOS (C#) ile nasıl programlanır?
- 18. C# Winforms FileInfo Hatası
- 19. İşlenmiş HTML sayfasının ekran görüntüsü nasıl alınır
- 20. Inline SVG İçerik IE'de görüntülenmiyor Ekran Görüntüsü
- 21. Firefox ile tam sayfa ekran görüntüsü al
- 22. iOS'ta ekran görüntüsü yakalama programatik olarak
- 23. Silverlight 5/xna ile ekran görüntüsü al
- 24. Ekran görüntüsü "önizleme" penceresi nasıl çizilir?
- 25. Android için ekran görüntüsü eylemini dinle
- 26. Xcode UI Testinin ekran görüntüsü dosyası nerede?
- 27. ekran görüntüsü openGL ve/veya X11 kullanarak
- 28. Kivy'de ekran arka planı görüntüsü nasıl ayarlanır
- 29. JSFL şu anki ekran görüntüsü alınıyor
- 30. MSDN kütüphanesiyle çoklu ekran görüntüsü yakalama
ben sormak zorunda? Ben gerçekten merak ediyorum, soruyu dalga geçme değil .... – David
Belirli kriterler karşılandığında her zaman grafik kontrol metre ekran görüntüsü göndermek gerekir .. – user441660
sadece bir anlık görüntü almak için çeşitli nesneler için bu denetimleri gösteriliyor olabilir iyi bir fikir .. onları bir kullanıcı kontrolüne yerleştirebilirsem, arka plandaki fotoğrafını çekip görüntü olarak gönderirsem güzel olurdu .. – user441660