Ejemplo n.º 1
0
        /// <summary>
        /// 点击选取屏幕坐标按钮
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void CaptureScreenCoordinatesBtn_Click(object sender, EventArgs e)
        {
            DrawScreen drawScreen = new DrawScreen();

            if (drawScreen.ShowDialog() == DialogResult.OK)
            {
                Rectangle rect = drawScreen.ResultRect;
                if (rect.Width != 0 && rect.Height != 0)
                {
                    Rectangle r = ScreenRealSize.ConvertRectangle(rect);
                    isFullScreenCb.Checked = false;
                    screenXNud.Value       = r.X;
                    screenYNud.Value       = r.Y;
                    screenWNud.Value       = r.Width;
                    screenHNud.Value       = r.Height;
                }
            }
        }
Ejemplo n.º 2
0
        /// <summary>
        /// 启动
        /// </summary>
        public ScreenShare()
        {
            InitializeComponent();
            ScreenRealSize.Init();
            Resources.Ico16.Save(ico16, ImageFormat.Png);
            Size screenRealSize = ScreenRealSize.DESKTOP;

            realScreenW      = screenRealSize.Width;
            realScreenH      = screenRealSize.Height;
            screenWNud.Value = videoWNud.Value = screenWNud.Maximum = realScreenW;
            screenHNud.Value = videoHNud.Value = screenHNud.Maximum = realScreenH;
            ips = Util.GetAllIPv4Addresses();
            foreach (var ip in ips)
            {
                ipAddressComboBox.Items.Add(ip.Item2 + " - " + ip.Item1);
            }
            ipAddressComboBox.SelectedIndex = ipAddressComboBox.Items.Count - 1;
            Log("屏幕共享初始化完成!");
        }
Ejemplo n.º 3
0
 /// <summary>
 /// 捕获指定区域屏幕截图
 /// </summary>
 /// <param name="r"></param>
 /// <param name="captureCursor"></param>
 /// <returns></returns>
 public static Bitmap CaptureScreenArea(Rectangle r, bool captureCursor)
 {
     try
     {
         Bitmap bitmap = new Bitmap(r.Width, r.Height);
         Graphics g = Graphics.FromImage(bitmap);
         g.CopyFromScreen(r.X, r.Y, 0, 0, new Size(r.Width, r.Height), CopyPixelOperation.SourceCopy);
         if (captureCursor)
         {
             Point p = ScreenRealSize.GetCursor();
             g.DrawImage(Resources.Cursor, new Point(p.X - r.X, p.Y - r.Y));
         }
         return bitmap;
     }
     catch
     {
         return null;
     }
 }