Time of Update: 2017-02-27
許多 C++ 愛好者已經對我最近的專欄中滲入了太多關於C#的內容表示關注。我承認這一點!我唯一的辯解是:由於 Microsoft® .NET Framework 已經獲得廣泛的認同,給我發送關於C#問題的讀者越來越多,同時因為C# 和 C++ 如此類似,所以我就回答了一部分他們的問題。這不是我有意疏遠 C++ 愛好者——上帝知道,我就是他們中的一員啊!不管怎樣,為了突出重點,從這個月開始的 C++ 專欄將更多地專註於 C++ 的內容,包括託管擴充以及 MFC
Time of Update: 2017-02-27
非科班出身, 現在才接觸彙編, 慚愧呀, 好好學!主選課本是清華大學王爽老師的《組合語言》. 推薦 王爽老師的彙編網------------------------------------------------------------------------- -------組合語言之前是機器語言.機器語言是機器指令的集合, 機器指令是一系列位元字, 電腦將之轉換為一系 列高低電平, 而實現運算.在 PC 機上運行機器指令的是 CPU; 不同的 CPU 有不同的指令, 所以某種組合語言
Time of Update: 2017-02-27
代碼運行效果圖如下:介紹有時我們並不需要提供完整的指令碼支援,就像本文所要介紹的ActiveX指令碼宿主(script
Time of Update: 2017-02-27
CharToOemBuff、OemToCharBuff 與 CharToOem、OemToChar 的區別只是前者可以指 定要轉換的字元數.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2:
Time of Update: 2017-02-27
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Button5:
Time of Update: 2017-02-27
本附件中的程式只是一個沒有任何功能的架構程式,程式本身是一個MFC對話方塊,也是一個NT服務,可以在進入windows之後,使用者登陸之前就開始運行。服務的名稱、顯示名稱、依賴服務 可以在資源中的String Table中修改,分別對應於IDS_SZSERVICENAME、IDS_SZSERVICEDISPLAYNAME、IDS_SZDEPENDENCIES;需要注意的是String Table中不可以存放Null
Time of Update: 2017-02-27
一、實現過程1.表頭修改建立一個MFC類CHeaderCtrlCl,其基類為CHeaderCtrl,響應OnPaint訊息實現自繪,實現代碼請看原始碼(由於代碼較占篇幅,所以就不貼上來了,抱歉),在標頭檔中定義函數LRESULT OnLayout( WPARAM wParam, LPARAM lParam ),之後手動添加訊息響應ON_MESSAGE(HDM_LAYOUT, OnLayout),在訊息響應中改變高度,實現代碼如下:LRESULT CHeaderCtrlCl::OnLayout(
Time of Update: 2017-02-27
拐角長度的限制的預設值是 10.0, 一般足夠用了.本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls;type TForm1 = class(TForm) TrackBar1: TTrackBar; procedure FormPaint(Sender:
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls;type TForm1 = class(TForm) RadioGroup1: TRadioGroup; procedure FormCreate(Sender: TObject); procedure
Time of Update: 2017-02-27
自訂的虛線樣式依賴與一個數組, 數組的元素分別代表虛線中線與間的長度, 數組大小好 像沒有限制;本例使用了六個元素的數組, 也就是表示虛線有三個線段和和三個間隔構成.本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ExtCtrls, ComCtrls;type TForm1 =
Time of Update: 2017-02-27
TGPLinearGradientBrush.Create( const point1, point2: TGPPoint; {線性漸層起始點與終止點} color1, color2: TGPColor {線性漸層起始色與終止色});TGPLinearGradientBrush.Create( const point1, point2: TGPPointF; color1, color2: TGPColor);本例效果圖:代碼檔案:unit
Time of Update: 2017-02-27
TGPLinearGradientBrush.Create( rect: TGPRect; {線性漸層的界限} color1, color2: TGPColor; {線性漸層起始色與終止色} mode: TLinearGradientMode {漸層方向, 見下表});TGPLinearGradientBrush.Create( rect: TGPRectF; color1, color2: TGPColor; mode:
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, ComCtrls, StdCtrls, ExtCtrls;type TForm1 = class(TForm) ColorListBox1: TColorListBox; TrackBar1: TTrackBar; procedure
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) procedure FormPaint(Sender: TObject); procedure FormMouseDown(Sender: TObject; Button: TMouseButton;
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, ComCtrls;type TForm1 = class(TForm) Button1: TButton; TrackBar1: TTrackBar; procedure FormMouseUp(Sender: TObject;
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure FormMouseUp(Sender: TObject; Button:
Time of Update: 2017-02-27
本例效果圖:代碼檔案:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) procedure FormPaint(Sender: TObject); procedure FormCreate(Sender: TObject); procedure
Time of Update: 2017-02-27
單一資料型別 類型 助記符 助記符簡寫 所佔位元組數 數值範圍 位元組 BYTE DB 1 0..255 字 WORD DW
Time of Update: 2017-02-27
關於進位:生活中有 7進位(星期)、60進位(小時)、10進位(算術)等等.電腦要用到 10進位、16進位、2進位和 8進位.8進位用得少了, 但也有, 譬如 Unix 伺服器上的檔案屬性.2進位是電腦容易識別的; 10進位是人容易識別的, 據說 10進位源自於人有十個手 指.電腦為什麼會使用 8進位和 16進位呢? 因為: 23=8; 24=16; 這樣比較容易和 2進 制換算.從這裡也能看出, 2進位和 10進位的換算相對複雜些.下面例子中說明了進位的表示方法, 七個函數都會返回整數 255
Time of Update: 2017-02-27
//Delphi 函數function DelphiFun(x: Integer): Integer;begin Result := x * 2;end;//彙編函數, 和上面的函數是同樣的功能function AsmFun(x: Integer): Integer;asm add eax, eax {eax 可以擷取第一個參數, 同時又是函數的傳回值, 所以可以如此 簡潔!}end;//測試 DelphiFunprocedure TForm1.Button1Click(Sender: