درخواست های ارتباط
جستجو
لیست دوستان من
صندوق پیام
همه را دیدم
  • در حال دریافت لیست پیام ها
صندوق پیام
رویدادها
همه را دیدم
  • در حال دریافت لیست رویدادها
همه رویدادهای من
دوره های مرتبط
دوره آموزشی مقدماتی برنامه نویسی به زبان سی شارپ
مدرس: حسین احمدی
این دوره را در 17 قسط خریداری کنید
دوره آموزشی طراحی رابط کاربری با JavaFX
مدرس: hharddy
این دوره را در 13 قسط خریداری کنید
دوره آموزشی برنامه نویسی به زبان پرل بصورت پروژه محور
مدرس: dr-iman
این دوره را در 13 قسط خریداری کنید
دوره تخصصی آموزش متن کاوی با ابزار NLTK
مدرس: taghandiki
این دوره را در 11 قسط خریداری کنید
دوره آموزشی برنامه نویسی WPF در ویژوال استودیو
مدرس: Amirhossein Fazlikhani
این دوره را در 12 قسط خریداری کنید
دوره آموزشی پردازش متن با زبان برنامه نویسی پایتون
مدرس: taghandiki
این دوره را در 20 قسط خریداری کنید
ساخت و مدیریت ربات تلگرام از صفر با زبان سی شارپ
مدرس: مهدی عادلی
این دوره را در 2 قسط خریداری کنید
دوره آموزشی Exploit نویسی به زبان Perl
مدرس: dr-iman
این دوره را در 7 قسط خریداری کنید
دوره آموزشی اسکریپت نویسی Batch یا Batch Scripting در ویندوز به زبان ساده
مدرس: حسین احمدی
این دوره را در 11 قسط خریداری کنید
دوره آموزشی مقدماتی برنامه نویسی جاوا به زبان ساده
مدرس: مهدی عادلی
این دوره را در 17 قسط خریداری کنید

آموزش گرفتن اسکرین شات از دسکتاپ در سی شارپ (با چند خط کد)

4 نظرات
107 بازدیدها
به نام خدا

در این آموزش شما با نحوه گرفتن اسکرین شات از دسکتاپ در محیط کنسول اپلیکیشن سی شارپ آشنا خواهید شد البته گرافیکی هم فرقی نمیکنه و همین دستوراته :

using System;
using System.Text;
using System.IO;
using System.Drawing;
using System.Windows.Forms;

namespace Wallpaper
{
    class Program
    {
        
        static void Main(string[] args)
        {
            Bitmap bit = new Bitmap(Screen.PrimaryScreen.WorkingArea.Width,Screen.PrimaryScreen.WorkingArea.Height);
            Graphics g = Graphics.FromImage(bit);
            g.CopyFromScreen(0,0,0,0,new Size(bit.Width,bit.Height));
            bit.Save(@"C:\Users\Edris_Ice\Desktop\edris.png", System.Drawing.Imaging.ImageFormat.Png);
            Console.ReadKey();
        }
    }
}


ابتدا فضای نام System.Drawing و System.Windows.Forms رو اگر داخل محیط کنسول اپلیکیشن هستید باید از قسمت Soulation Explorer بر روی Reference راست کلیک کرده و AddReference رو انتخاب کنید و در قسمت سرچ فضا نام های ذکر شده رو به پروژه اضافه نمایید .

ولی اگه داخل محیط ویژوال هستید خودش از قبل اضافه کرده و نیاز نیست به طور دستی اضافه کنید .

توضیح اصطلاحات :

ُُbitmap : این کلاس که درون فضای نام System.Drawing قرار داره میاد برای ما یه تصویر با عرض و ارتفاع درست میکنه البته قالبشو .

Screen.PrimaryScreen.WorkingArea.Width : این کلاس که درون فضای نام System.Windows.Forms قرار داره میاد برای ما عرض صفحه دسکتاپمون رو میگیره و به bitmap میده

Screen.PrimaryScreen.WorkingArea.Height : این کلاس که درون فضای نام System.Windows.Forms قرار داره میاد برای ما ارتفاع صفحه دسکتاپمون رو میگیره و به bitmap میده .

Graphics : این کلاس که درون فضای نام System.Drawing قرار داره میاد برای ما روی قالب تصویری که با استفاده از bitmap ایجاد کردیم گرافیک انجام میده . یا به اصلاح کاملش میکنه .

Graphics.FromImage : این متد میاد قالبی که با bitmap ساختیم رو میگیره البته تمام متد ها به صورت پیشفرض از By Pass Value استفاده میکنن نه از By Pass Ref

CopyFromScreen : این متد میاد یه کپی از تصویری که از قالب bitmap گرفته میگیره و روش کار انجام میده (اینجا باید شما به By Pass Value پی برده باشین) خب
این متد پنج تا آرگومان گرفته که چهار تای اولی همش صفره که میاد از گوشه های قالبی که با bitmap درست شده یعنی از گوشه های بالا:گوشه راست-چپ و پایین:گوشه راست-چپ بر روی قالب گرافیک پیاده میکنه و پارامتر new size() که یه کلاس هستش میاد سایز قالب اصلیمون رو میگیره که ما بهش همون سایز قالب فرعی bitmap رو میدیم .

bit.SaveAdd : این متد میاد برای ما تصویری که درست شده رو ذخیره میکنه که دوتاپارامتر گرفته . اولی محل ذخیره عکس و دومی با چه فرمتی که ما دادیم png


این آخرین آموزش من به صورت متنی بود و بقیه آموزش ها به صورت ویدیو خواهد بود .

برچسب ها
مطالب مرتبط

در حال دریافت اطلاعات

نظرات
  • سلام آقا ادریس؛
    خیلی ممنونم که اخیرا دارین آموزشهای خوبی میذارین. دست گلتون درد نکنه دوست عزیز.
    فقط استاد عنوان این مقاله با متنش یکی نبود و متفاوت بودن چرا؟
  • خیلی ممنون از توجه شما . ویرایش شد

  • سلام دوست بزرگوار
    در مورد آموزشتون یه سوال داشتم
    وقتی از برنامه خارج میشیم آیکن هنوز نمایش داده میشود
    و حتما باید با موس روی آن بروید تا بسته شود و همچنین با چند بار باز و بستن برنامه ، برای هر دفعه یک آیکن ایجاد میکند
    لطفا راهنمایی بفرمائید
    ممنون
  • جوابش رو پیدا کردم
    notifyIcon1.Icon = null;
    notifyIcon1.Dispose();
    
    
    گفتم شاید کسی بدردش بخوره

برای ارسال نظر ابتدا به سایت وارد شوید

arrow