Time of Update: 2018-12-07
TListBox 有兩個兄弟 TComboListBox、TComboEditListBox; TComboBox、TComboEdit 雖不是不是從它們繼承, 但分別包含了它們, 所以使用起來都有點像 TListBox.TComboBox 更像 TListBox, 比 TComboEdit 多出了 Selected 等成員;TComboEdit 是從 TCustomEdit 繼承, 和 TEdit 是兄弟, 比 TComboBox 多出了 Text 等成員.
Time of Update: 2018-12-07
DECLARE @sp_name nvarchar(400)DECLARE @sp_content nvarchar(2000)DECLARE @asbegin intdeclare @now datetimeselect @now = getdate()DECLARE sp_cursor CURSOR FOR SELECT object_name(id)FROM sysobjectsWHERE xtype = 'P' AND type = 'P' AND crdate <
Time of Update: 2018-12-07
把cxGridView裡OptionsView選項中的兩項修改成如下 OptionsView.Indicator = True OptionsView.IndicatorWidth = 40//寬度在customDrawIndicatorCell事件中填寫procedure TForm1.cxGrid1BandedTableView1CustomDrawIndicatorCell( Sender: TcxGridTableView; ACanvas: TcxCanvas;
Time of Update: 2018-12-07
var I: Integer;begin //Integer 類型是4位元組(32位)有符號整數, 最高位是符號位, 如果是正數, 符號位是 0、負數的符號位是1 //所以 Integer 的最大值是: 01111111 11111111 11111111 111111112 asm mov I, 01111111111111111111111111111111B; end; ShowMessage(IntToStr(I)); {2147483647}
Time of Update: 2018-12-07
除了 Byte、Word、Cardinal、Integer 外, Delphi 的整數類型還有:Longint、Longword、Shortint、Smallint、Int64其中 Longint 相當於 Integer; Longword 相當於 Cardinal. 這樣還有三種類型:Shortint、Smallint、Int64//Shortint 是1位元組(8位)有符號整數var I: Shortint;begin //其最大值是: 011111112 asm mov I,
Time of Update: 2018-12-07
剪下地區也是地區的一種, 視窗在重繪時只會重繪剪下地區中的內容.SelectClipRgn 和 ExtSelectClipRgn 是通過指定地區來定義剪下地區;SelectClipPath 是通過指定路徑來定義剪下地區;ExtSelectClipRgn 和 SelectClipPath 比 SelectClipRgn 多出一個與原剪下地區混合方式的參數:RGN_AND = 1;RGN_OR = 2;RGN_XOR = 3;RGN_DIFF = 4;RGN_COPY =
Time of Update: 2018-12-07
TApplicationEvents.OnMessage 的第二個參數 Handled 如果是 True, 表示訊息已經處理過了, 到此為止.unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, AppEvnts, StdCtrls;type TForm1 = class(TForm) Memo1: TMemo;
Time of Update: 2018-12-07
首先建立一個空白的活頁簿用作測試,並在其中建立空白工作表,在表中建立空白行,在行中建立儲存格,並填入內容: //建立空白活頁簿IWorkbook workbook = new HSSFWorkbook();//在活頁簿中:建立空白工作表ISheet sheet = workbook.CreateSheet();//在工作表中:建立行,參數為行號,從0計IRow row = sheet.CreateRow(0);//在行中:建立儲存格,參數為列號,從0計ICell cell =
Time of Update: 2018-12-07
到目前為止,我們開發的所有功能都是匿名訪問的,這顯然不夠安全。通常我們會要求註冊的使用者通過使用者名稱和密碼登入,只有登入後的使用者才可以管理產品。套用專業的說法就是:第一步是認證,驗證使用者是否是他所宣稱的那個人;第二步是授權,驗證使用者是否擁有執行某種操作的許可權。Django已經提供了一個django.contrib.auth應用來處理登入、登出和許可權驗證,同時還提供了django.contrib.admin應用可以進行使用者管理(admin應用還有很多其他的功能)。所以我們只需要將這些
Time of Update: 2018-12-07
文章目錄 組織單元間內含項目關聯性崗位與部門的從屬關係同部門崗位之間的上下級關係部門負責人崗位跨部門的崗位之間的上下級關係聘任關係
Time of Update: 2018-12-07
我定義了一個方法來尋找當前節點的父節點為LI的方法,然後列印出這個節點的類名。剛開始我寫的方法是:function getLi(src) { if(src.nodeName === 'LI') return src; else getLi(src.parentNode); }src = getLi(src)這樣的話返回結果一直報錯。後來我才發現我在else中沒有返回那個遞迴的資料。修改後為function getLi(src) {
Time of Update: 2018-12-07
Error loading native library: libnjni9.so.的解決辦法 $ netcaError loading native library: libnjni9.so.java.lang.UnsatisfiedLinkError: jniGetOracleHomeat oracle.net.common.NetGetEnv.getOracleHome(NetGetEnv.java)at
Time of Update: 2018-12-07
同事kill掉一個進程 521,查詢狀態:select * from v$session where sid=521;狀態是:KILLED,但是SESSION還是沒有釋放鎖住的資源,查詢 v$process ,得不到 SPID系統進程號,原因是 kill掉 session的SID和SERIAL#後,v$session的PADDR發生了變化,只能通過下列sql查詢新的在v$process中而不在v$session中的進程:select p.addr from v$process p where
Time of Update: 2018-12-07
提示: 因為其中的回呼函數是在停機時間內訪問的, 必須在 DLL 中; 要訪問的資料都必須是在固定的資料區段中; 除了PostMessagetimeGetSystemTimetimeGetTimetimeSetEventtimeKillEventmidiOutShortMsgmidiOutLongMsgOutputDebugString 外, 也不能有其他系統調用.//聲明:midiOutOpen( lphMidiOut: PHMIDIOUT; {用於返回裝置控制代碼的指標;
Time of Update: 2018-12-07
本例:unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs;type TForm1 = class(TForm) procedure FormClick(Sender: TObject); end;var Form1: TForm1;implementation{$R *.dfm}var f:
Time of Update: 2018-12-07
TDirectDrawSurface.PokeLine();TDirectDrawSurface.PokeLinePolar();TDirectDrawSurface.PokeBox();TDirectDrawSurface.PokeBlendPixel();TDirectDrawSurface.PokeCircle();TDirectDrawSurface.PokeEllipse();TDirectDrawSurface.PokeFilledEllipse();TDirectDrawSurfa
Time of Update: 2018-12-07
一個程式從無到有的過程是這樣的: 編輯代碼 -> 預先處理 -> 編譯(成dcu等) -> 連結(為exe等).什麼是預先處理? 譬如 VCL 中有很多代碼是相容 Linux 的, 在 Windows 下就需要在編譯之前預先處理掉那些 for Linux 的代碼.1、判斷作業系統:其中的 "MSWINDOWS" 和 "LINUX" 就是 Delphi 預定義的 "條件標識符".begin {$IFDEF MSWINDOWS} ShowMessage('Windows')
Time of Update: 2018-12-07
非科班出身, 現在才接觸彙編, 慚愧呀, 好好學! 主選課本是清華大學王爽老師的《組合語言》. 推薦 王爽老師的彙編網組合語言之前是機器語言.機器語言是機器指令的集合, 機器指令是一系列位元字, 電腦將之轉換為一系列高低電平, 而實現運算.在 PC 機上運行機器指令的是 CPU; 不同的 CPU 有不同的指令, 所以某種組合語言也只是針對某系列的 CPU.王爽老師舉了一個用機器語言輸出 "welcome to masm" 的例子:000111101011100000000000000000000
Time of Update: 2018-12-07
unit Unit1;interfaceuses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;type TForm1 = class(TForm) Button1: TButton; Button2: TButton; procedure Button1Click(Sender: TObject); procedure
Time of Update: 2018-12-07
什麼是中繼資料中繼資料(metadata)是從資料發展而來,同時作為資料的一種功能。中繼資料是“資料的資料”,是對資料的標識——我們通常通過一組屬性或元素來描述特定的資源,而這些屬性或元素就是該資源的中繼資料。典型的例子是圖書館的書目,就是一種中繼資料。書目包含作者、題名、出版日期、主題、存放架號等屬性。對於每本指定的書,都會在書目中有上述屬性值。這些資料值就是該書的“中繼資料”。 中繼資料的層次分層管理是人們解決複雜問題的一種思路。通常人們會將資源按照一定的層次進行分類,以便於管理。中繼資料