Time of Update: 2018-12-08
C#擷取遠程圖片,需要Form使用者名稱和密碼的Authorization認證複製代碼 代碼如下:using System;using System.Collections.Generic;using System.Drawing;using System.IO;using System.Linq;using System.Net;using System.Text;using System.Web;using System.Web.UI;using
Time of Update: 2018-12-08
複製代碼 代碼如下:protected virtual OnPaint(PaintEventArgs e){ if(paint != null){ paint(this,e);}}如果直接重寫onpaint,paint就會失效;這樣就不會失效:複製代碼 代碼如下:protected override OnPaint(PaintEventArgs e){ base.OnPaint(e);
Time of Update: 2018-12-08
添加方法:選擇項目->引用->右擊“添加引用”->選擇COM 找到上面組件—>點擊“確定”。實現代碼如下:複製代碼 代碼如下: private void 匯出資料_Click(object sender, EventArgs e) { ExportToExecl(); } /// <summary> /// 執行匯出資料 /// </summary>
Time of Update: 2018-12-08
消極式載入(lazy loading) 設計模式是為了避免一些無謂的效能開銷而提出來的,所謂消極式載入就是當在真正需要資料(讀取屬性值)的時候,才真正執行資料載入操作.為了便於理解, 我們來建立一個情境, 假設我們要構造一個Hero(英雄) 類, 每個Hero 有自己的名字和(SpecialSkill)特殊技術.建模這是一種建立的方法:複製代碼 代碼如下:public class Hero{ public string FullName { get; set; } public
Time of Update: 2018-12-08
1.讓方法返回多個參數1.1在方法體外定義變數儲存結果複製代碼 代碼如下:using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace Method { class Program { public static int quotient; public static int remainder;
Time of Update: 2018-12-08
比如有這樣兩個字串:複製代碼 代碼如下: var a = "a-b=c12"; var b =
Time of Update: 2018-12-08
1.委託的定義委託可以看成是一種資料類型,可以用於定義變數能接受的值只能是一個方法。委託簡單的樣本:複製代碼 代碼如下:namespace DelegateDemo { class Program { public delegate int MathOptDelegate(int value1,int value2); public int add(int value1, int value2) {
Time of Update: 2018-12-08
前言 一直沒有系統去看過c++,因為懂得一些c的基本文法,在實際編程中用到c++,只能用到哪些看哪些,發現這樣雖然能夠完成大部分工作,但是有時候效率實在太低,比如說這節要講的Std::sort()函數的使用,調了半天才調通。開通c/c++序列部落格是記錄在使用c++中一些難題,避免以後重犯錯,當然以後會盡量擠出時間來較系統學習下c++。 開發環境:QtCreator2.5.1+OpenCV2.4.3 實驗基礎 首先來看看std中的快速排序演算法sort的使用方法: template
Time of Update: 2018-12-08
其實很簡單。。。C#位移運算子:左移:<<右移:>>位移理解可能簡單一些:其實就是資料轉換成二進位的左右移動;右移左補0,左移右補0,後面多出來的部分去掉。用乘除法去理解位移也可以: 左位移:相當於乘 左移1位相當於乘2,左移2位相當於乘4,左移3位相當於乘8,左移4位相當於乘16...類推 右位移:相當於除
Time of Update: 2018-12-08
複製代碼 代碼如下: class HuffmanTree { private Node[] data; public int LeafNum { get; set; } public Node this[int index] { get { return data[index]; } set { data[index] = value; } } public
Time of Update: 2018-12-08
1、調用系統dll使用其提供的方法。引用的dll,複製代碼 代碼如下:[DllImport("kernel32.dll")] public static extern int WinExec(string exeName, int operType); 調用,WinExec(@"路徑\exe的檔案名稱", 參數);operType參數如下複製代碼 代碼如下:0: 隱藏, 並且工作列也沒有最小化表徵圖 1: 用最近的大小和位置顯示, 啟用 2: 最小化, 啟用 3: 最大化, 啟用
Time of Update: 2018-12-08
情境介紹如果需要使用UDP傳輸較大資料,例如傳輸10M的圖片,這突破了UDP的設計原則。UDP的設計是基於"datagram",也就是它假設你發送的每個資料包都能包含在單一的包內。並且設定UDP資料包的最大長度受基礎網路通訊協定的限制。UDP資料包的理論最大長度限制是 65535 bytes,這包含 8 bytes 資料包頭和 65527 bytes 資料。但如果基於IPv4網路傳輸,則還需減去 20 bytes
Time of Update: 2018-12-08
複製代碼 代碼如下: //計算耗時任務所需的秒數 public int GetTimeSpan(DateTime dtStart, DateTime dtEnd) { TimeSpan tsStart = new TimeSpan(dtStart.Ticks); TimeSpan tsEnd = new TimeSpan(dtEnd.Ticks); TimeSpan ts = tsEnd.Subtract(tsStart).Duration();//秒 //dateDiff =
Time of Update: 2018-12-08
在X86的環境下,var wParam = (int)msg.WParam;工作得很好。在X64的環境下,快速滾動滾輪會出現msg.WParam 轉換為int的時候溢出,(WParam=4263510016)。資訊為:未處理System.OverflowException Message=算術運算導致溢出。 Source=mscorlib StackTrace: 在 System.IntPtr.op_Explicit(IntPtr value) 在
Time of Update: 2018-12-08
1.根據單個分隔字元用split截取例如複製代碼 代碼如下:string st="GT123_1";string[] sArray=st.split("_");即可得到sArray[0]="GT123",sArray[1]="1";2.利用多個字元來分隔字串例如複製代碼 代碼如下:string str = "GTAZB_JiangjBen_123";string[] sArray = str.Split(new char[2] { 'j', '_' });foreach(string e in
Time of Update: 2018-12-08
1.c#裡面的TabControl控制項沒有關閉按鈕,而且很難看。2.有一些已經做好的第三方控制項,但是收費。3.由於我的故障樹推理診斷項目在繪圖的時候允許同時開啟多個文檔進行操作,就要實作類別似於瀏覽器的多標籤功能,而且要可以關閉。4.所以自己寫一個類繼承TabControl類,然後重寫一些裡面的方法即可實現。5.特色:有關閉按鈕,標籤有背景顏色,選中的標籤和沒選中的顏色不一樣,實現滑鼠中鍵和右鍵的功能先看我的項目中的完整代碼,有很多代碼是我的項目需要,可根據你的項目需求刪減,核心的代碼後面詳
Time of Update: 2018-12-08
1. 用Microsoft Visual C++ 6.0編譯的程式,或者發布在Windows 2000/NT/ME/98 系統單純通過拷貝MSVCRxx.DLL檔案到應用程式目錄或system32目錄即可2. 用Visual Studio 2005以上編譯的程式,且發布在Windows XP及以上系統為了減少DLL引發的配置問題(DLL hell),C和C++運行時由並行 (Side-by-Side)
Time of Update: 2018-12-08
Convert.ToInt32、int.Parse(Int32.Parse)、int.TryParse、(int) 四者都可以解釋為將類型轉換為 int,那它們的區別是什麼呢?Convert.ToInt32 與 int.Parse 較為類似,實際上 Convert.ToInt32 內部調用了 int.Parse:Convert.ToInt32 參數為 null 時,返回 0;int.Parse 參數為 null 時,拋出異常。Convert.ToInt32 參數為 ""
Time of Update: 2018-12-08
什麼是隱式轉換 Implicit Conversion 隱式轉換就是直接使用,比如可以把一個 byte 類型直接用在 int 上。 比如以下直接把 byte 的 b 賦給 int 的 n,之間是直接用的,沒存在什麼額外的關鍵字,全由系統自動完成類型轉換。 複製代碼 代碼如下:byte b = 1; int n = b; 隱式數值轉換表(摘自 MSDN)從到sbyteshort、int、long、float、double 或
Time of Update: 2018-12-08
做分類 經常會用到無限層級的分類 先介紹一下資料庫的表結構tid 類別編號tname 類別名稱pid 父類編號測試資料就不寫了,大家可以自己插入一下試試查詢制定類別的 所有的子類 sql 的 代碼複製代碼 代碼如下:alter proc proc_chaxun(@tid int )asbegin with tt as ( select tid,tname,pid from dbo.t_goodsType where tid=@tid