用C# 實現截圖功能(1)(類似QQ截圖)

概述:在公司,不能自己安裝軟體,也不能下載,但有時候需要截圖。用PrintScreen鍵只能截取全屏,感覺很麻煩。於是決定自己編寫一個剪取工具。眾所周知,QQ截圖首先將截取全屏為一個圖片,然後用在這個圖片基礎上截取需要的部分。本程式實現方法類似。程式運行截圖如下:圖中心矩形為即將截取地區程式很粗糙,希望大家提出寶貴意見。1,自訂矩形類MyRectangle在QQ截圖程式中,使用者用滑鼠繪製出的截圖地區是可調整大小和位置的,在4個邊的中點和4個頂點各有一個小矩形標記。(如圖所示).NET

使用C#寄送電子郵件

前幾天學生問怎樣用C#寄送電子郵件,網上文章很多,隨手找了一篇,給學生,讓他自己去看下。結果,搞了一天沒有搞定,只好來仔細看一下。用C#寄送電子郵件,網上介紹的很多文章都是使用SmtpClient,也有System.Web.Mail ,但是,System.Web.Mail 已經是不推薦使用的了。以下是在網上常見的一種寄送電子郵件的代碼:1 MailMessage MyEmilMessage=new MailMessage();2 string attachFile; //用於構造附件的字串變數3

C#中啟動進程的三種方法

1.啟動子進程,不等待子進程結束private void simpleRun_Click(object sender, System.EventArgs e){ System.Diagnostics.Process.Start(@"C:\listfiles.bat");}2.啟動子進程,等待子進程結束,並獲得輸出1private void runSyncAndGetResults_Click(object sender, System.EventArgs

C#檔案操作(上傳、下載、刪除、檔案清單...)

using System.IO;1.檔案上傳----------如下要點:HTML部分:<form id="form1" runat="server" method="post" enctype="multipart/form-data"><input id="FileUpLoad" type="file" runat="server"/&

無廢話C#設計模式之七:Adapter

意圖把一個類的介面變換成用戶端所期待的另一種介面,從而使原本介面不匹配而無法在一起工作的兩個類能夠在一起工作。情境假設網路遊戲的用戶端程式分兩部分。一部分是和服務端通訊的大廳部分,大廳部分提供的功能有道具購買、讀取房間列表、建立房間以及啟動遊戲程式。另一部分就是遊戲程式了,遊戲程式和大廳程式雖然屬於一個用戶端,但是由不同的公司在進行開發。遊戲大廳通過實現約定的介面和遊戲程式進行通訊。一開始的設計就是,大廳程式是基於介面方式調用遊戲程式啟動遊戲情境方法的。在大廳程式開發接近完成的時候,公司決定和另

無廢話C#設計模式之六:Builder

意圖將一個複雜的構建與其表示相分離,使得同樣的構建過程可以建立不同的表示。情境在電腦城裝機總有這樣的經曆。我們到了店裡,先會有一個銷售人員來詢問你希望裝的機器是怎麼樣的配置,他會給你一些建議,最終會形成一張裝機單。和客戶確定了裝機配置以後,他會把這張單字交給提貨的人,由他來準備這些配件,準備完成後交給裝機技術人員。技術人員會把這些配件裝成一個整機交給客戶。不管是什麼電腦,它總是由CPU、記憶體、主板、硬碟以及顯卡等組件構成的,並且裝機的過程總是固定的:l 把主板固定在機箱中l 把CPU安裝到主板

C#中國身份證驗證

BlackPhoenix著於發表 2008-2-19C#中國身份證驗證,包括省份驗證和校正碼 驗證,符合GB11643-1999標準...今天寫的C#中國身份證驗證,包括省份驗 證和校正碼驗證,符合GB11643-1999標準...理論部分:15位社會安全號碼碼 =6位地區代碼+6位生日+3位編號18位社會安全號碼碼=6位地區代碼+8位生日+3位編號 +1位檢驗碼各省市地區國家代碼前兩位代碼是:  北京  11  吉林  22   福建  35  廣東  44  雲南  53  天津  12  

比較C#中的readonly與const

C#中有兩種常量類型,分別為readonly(運行時常量)與const(編譯時間常量),本文將就 這兩種類型的不同特性進行比較並說明各自的適用情境。工作原理readonly為運行時常量,程式運行時進行賦值,賦值完成後便無法更改,因此也有人 稱其為唯讀變數。const為編譯時間常量,程式編譯時間將對常量值進行解析,並將所有常量引用替換為相應 值。下面聲明兩個常量:public static readonly int A = 2; //A為運行時常量public const int B = 3; /

觀察者模式的c#例子

using System;using System.Collections.Generic;using System.Text;using System.Collections;namespace ConsoleApplication1{  public class singleon  {    public singleon()    {      //      // TODO: 在此處添加建構函式邏輯      //    }  }  public interface

C#基類應用--字串處理類

首先介紹一下常用的幾個功能:Compare(str1,str2)——比較兩個字串 str1,str2的大小,如果大於返回正數,等於返回0,小於返回負數!IndexOf——定位字串中第一次出現某個給定字串的位置PadLeft和PadRight——在字串的開始和結尾用指定的輸入鍵台字串ToLower和ToUpper把字串轉換為小寫或大寫形式Trim——刪除首尾空白String.Replace—

C#類比MSN表單抖動

C#類比MSN表單抖動表單抖動是件很有意思的事情,就讓我們看看一起來看看它的原理吧。其實是產生隨機數,然後改變Form的左上方的座標。我用的是迴圈來弄得,其實可以用timer來控制.我把抖動分成了兩種抖動:1。產生隨機數,改變表單左上方座標,然後立即把表單的坐上角座標還原,繼續迴圈。2。產生隨機數,改變表單左上方座標,迴圈完畢之後,然後立即把表單的坐上角座標還原。核心代碼如下://第一種抖動private void button1_Click(object sender, EventArgs

接觸C#的伺服器端Regex相關驗證

初次接觸C#的伺服器端Regex相關驗證 後續將會在這個基礎上將這個C#的伺服器端Regex相關內容 集結在這裡入門樣本如下//驗證string strFileName = "S_123456_200701.zip"System.Text.RegularExpressions.Regex strReg = newSystem.Text.RegularExpressions.Regex(@"^S_\d{6}_\d{6}\.zip$");if (strReg.

VirtualBox下RedHat不能使用Ctrl+C快速鍵解決

環境:VirtualBox4.1 + RedHat Linux 6問題:當輸入錯誤的指令時 ,按下Ctrl+C無法終止解決:首先看看Ctrl+C鍵的作用:Ctrl+C鍵:在 Linux 底下,如果您輸入了錯誤的指令或參數,有 的時候這個指令或程式會在系統底下跑不停這個時候怎麼辦?別擔心,如果您想 讓當前的程式『停掉』的話,可以輸入:[Ctrl]與 c 按鍵 (先按著 [Ctrl]不放 ,且再按下 c 按鍵,是組合按鍵!),那就是中斷目前程式的按鍵啦!注

C#的Socket程式(TCP)

其實只要用到Socket聯結,基本上就得使用Thread,是交叉使用的。C#封裝的Socket用法基本上不算很複雜,只是不知道託管之後的Socket有沒有其他效能或者安全上的問題。在C#裡面能找到的最底層的操作也就是socket了,概念不做解釋。程式模型如下:WinForm程式 :

C# 3.0入門系列(六)-之OrderBy操作

本節講orderby操作.我突然在想這麼一個問題,讀者會T-SQL嗎?要是不知道,那我寫的是不是太簡單了呢?做個調查哦,不知道的舉手.OrderBy操作簡單的,按僱用日期排序,預設為升序var q = from e in db.Employees orderby e.HireDate select e;帶where條件的,shipcity為london的。var q = from o in db.Orders where o.ShipCity ==

趣味編程:C#中Specification模式的實現(參考答案

上一篇文章中我們利用C#語言的特性實現了一種輕量級的Specification模式,它的關鍵在於拋棄了具體的Specification類型,而是使用一個委派物件代替唯一關鍵的IsSatisfiedBy方法邏輯。據我們分析,其優勢之一在於使用簡單,其劣勢之一在於無法靜態表示。但是它們還都是在處理“商務邏輯”,如果涉及到一個用於LINQ查詢或其他地方的運算式樹狀架構,則問題就不那麼簡單了——但也沒有我們想象的那麼複雜。好,那麼我們就把情境假想至LINQ

常用演算法:C#約瑟夫環問題

約瑟夫環問題,即設有n個人坐成一個圈,從某個人開始報數,數到m的人出列,接著從出列的下一個人開始重新報數,數到m的人再出列,如此迴圈,直到所有人都出列為止。最後按出列順序輸出。代碼如下://從第start人開始計數,以alter為單位迴圈記數出列,總人數為total public int[] Jose(int total, int start,int alter) { int j, k = 0; //count數組儲存按出列順序的資料,以當結果返回 int[]

C#設計模式之門面設計模式(Facade)

一、門面(Facade)模式外部與一個子系統的通訊必須通過一個統一的門面(Facade)對象進行,這就是門面模式。醫院的例子用一個例子進行說明,如果把醫院作為一個子系統,按照部門職能,這個系統可以劃分為挂號、門診、劃價、化驗、收費、取藥等。看病的病人要與這些部門打交道,就如同一個子系統的用戶端與一個子系統的各個類打交道一樣,不是一件容易的事情。首先病人必須先挂號,然後門診。如果醫生要求化驗,病人必須首先劃價,然後繳款,才能到化驗部門做化驗。化驗後,再回到門診室。解決這種不便的方法便是引進門面模式

c#定義滑鼠為指定的動畫表徵圖

在Windows表單中,通過設定控制項的屬性無法將滑鼠設定為動畫表徵圖的形式,如果要實現該功能,可以通過API函數LoadCursorFromFile和SetClassLong實現。這兩個函數的聲明代碼如下:[DllImport("user32", EntryPoint = "LoadCursorFromFile")]public static extern int LoadCursorFromFile(string

[C# 3.0 入門] [第一章 Lambda運算式] 第三節:Lambda與匿名方法的區別

Lambda運算式與匿名方法的區別那麼,為什麼Lambda運算式比匿名方法寫起來要短呢?這種像變戲法一樣的手法真的能用嗎?有沒有重要訊息遺漏掉呢?為了回答這些問題,就讓我們把匿名方法和Lambda運算式比較一下,看看Lambda運算式究竟怎麼寫。1using System;23delegate int SampleDelegate(int x, int y);45class Program6{7  private static void Calculate(int x, int y,

總頁數: 4314 1 .... 808 809 810 811 812 .... 4314 Go to: 前往

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.