Delhpi-高級(jí)程序設(shè)計(jì)_第1頁
Delhpi-高級(jí)程序設(shè)計(jì)_第2頁
Delhpi-高級(jí)程序設(shè)計(jì)_第3頁
Delhpi-高級(jí)程序設(shè)計(jì)_第4頁
Delhpi-高級(jí)程序設(shè)計(jì)_第5頁
已閱讀5頁,還剩36頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

Delhpi-高級(jí)程序設(shè)計(jì)第一頁,共41頁。前言

關(guān)于課程關(guān)于教材關(guān)于授課者關(guān)于聽課者關(guān)于教學(xué)過程關(guān)于考核辦法課時(shí)安排與教學(xué)方法:總課時(shí):30學(xué)時(shí) 周學(xué)時(shí):3學(xué)分:3講課:24學(xué)時(shí)實(shí)驗(yàn):6學(xué)時(shí) 學(xué)生自補(bǔ):10~20學(xué)時(shí)考試:理論考試授課內(nèi)容:1、 面向?qū)ο缶幊膛cDelphi7.0基礎(chǔ)2、 Delphi常量、變量與數(shù)據(jù)類型3、 Delphi運(yùn)算符與表達(dá)式4、 Delphi語句5、 Delphi函數(shù)與過程6、 Delphi界面設(shè)計(jì)7、 Delphi輸入與輸出8、 Delphi數(shù)據(jù)庫編程9、 Delphi技巧與提高OO技術(shù)的層次結(jié)構(gòu)(b)(a)超類類1類2…對(duì)象1對(duì)象2…實(shí)例1實(shí)例2…Class<類名>[:<父類名>]{[Private:<私有數(shù)據(jù)><私有操作>]Public:<私有數(shù)據(jù)><私有操作>}第二頁,共41頁。面向?qū)ο蠹夹g(shù)概述1.11980年Xerox公司首次推出面向?qū)ο笳Z言SMALLTALK-80;1.2當(dāng)前,面向?qū)ο螅╫bject-oriented,OO)技術(shù)已經(jīng)發(fā)展成為軟件開發(fā)領(lǐng)域的主流技術(shù)。OO技術(shù)核心概念是對(duì)象,認(rèn)為客觀世界中的任何事物在一定前提下都可看作對(duì)象。一個(gè)對(duì)象包括從所研究事物抽取得到的相關(guān)屬性數(shù)據(jù)以及相應(yīng)于屬性數(shù)據(jù)的操作行為,即對(duì)象是由一組數(shù)據(jù)和與該組數(shù)據(jù)相關(guān)的操作構(gòu)成的封裝體;也可看作為具有一定屬性、方法和事件的實(shí)體。賦予對(duì)象屬性以具體值就得到了該對(duì)象的一個(gè)實(shí)例。對(duì)一組相似對(duì)象進(jìn)行抽象就得到了該組對(duì)象的類,它描述了該組對(duì)象共同的屬性和操作。把相似的類看作對(duì)象再進(jìn)行抽象便得到該組類的超類。第一講面向?qū)ο蠹夹g(shù)

與Delphi7.0基礎(chǔ)第三頁,共41頁。1.3技術(shù)具有如下優(yōu)點(diǎn):繼承性父類具有的數(shù)據(jù)和操作可被子類繼承,從而降低數(shù)據(jù)冗余;封裝性對(duì)象封裝數(shù)據(jù)及其操作,用戶不必了解對(duì)象細(xì)節(jié),增強(qiáng)了系統(tǒng)的可維護(hù)性;多態(tài)性即同名多語義,系統(tǒng)依據(jù)具體情況區(qū)別執(zhí)行,可用性好;模塊性對(duì)象是獨(dú)立的實(shí)體,彼此間只能通過消息發(fā)生聯(lián)系,可重用性好、利用率高。1.4面向?qū)ο缶幊梯^傳統(tǒng)面向過程編程,最主要的區(qū)別在于它的“事件驅(qū)動(dòng)、消息觸發(fā)”模式,即代碼不再按預(yù)定的路徑執(zhí)行,而是以事件順序決定代碼執(zhí)行順序。2.Delphi7.0基礎(chǔ)2.1.簡(jiǎn)介Delphi是Borland(Inprise)公司基于Pascal語言推出的面向?qū)ο?、可視化程序開發(fā)工具;既具有C++的強(qiáng)大功能,又具有VisualBasic簡(jiǎn)單易學(xué)的特點(diǎn);在數(shù)據(jù)庫系統(tǒng)開發(fā)方面性能尤為突出。完全支持MicroSoft.NET框架,是基于Windows平臺(tái)的跨平臺(tái)開發(fā)工具。第四頁,共41頁。Delphi7.0開發(fā)環(huán)境具有很強(qiáng)的集成性和智能性特征,其代碼編輯器能夠自動(dòng)提示對(duì)象的屬性、方法、事件以及函數(shù)的參數(shù);窗體和組件(VB稱控件)是常見對(duì)象,對(duì)象的方法表現(xiàn)為對(duì)象本身包含的函數(shù)與過程;Delphi常見的三種文件類型:工程文件*.dpr、窗體文件*.dfm、單元文件*.pas,其中單元文件和工程文件的主名不能相同;單元頭標(biāo)明單元文件名稱,由關(guān)鍵字unit標(biāo)識(shí);接口部由關(guān)鍵字interface標(biāo)識(shí),用于聲明類型、常量、變量、函數(shù)與過程等,其信息可以被本單元和其他單元程序調(diào)用;執(zhí)行部定義在接口部聲明過的函數(shù)與過程代碼,也可包含本單元以外不被其他單元調(diào)用的常量與變量;初始部用于單元初始化,一般用于內(nèi)存分配;結(jié)束部對(duì)應(yīng)于初始部,按堆棧序列進(jìn)行操作。第五頁,共41頁。unitp1;{單元頭}Interface{接口部}Uses{接口部之單元引用聲明}Windows,Messages,SysUtils,Variants,Classes,Graphics,Controls,Forms,Dialogs,StdCtrls;Type{接口部之類型聲明}MyExcept=class(Exception)end;typeTForm1=class(TForm)Button1:TButton;Label1:TLabel;Edit1:TEdit;Button2:TButton;Button3:TButton;procedureButton1Click(Sender:TObject);procedureFormCreate(Sender:TObject);procedureEdit1KeyPress(Sender:TObject;varKey:Char);private{Privatedeclarations}public{Publicdeclarations}end;var{接口部之變量引用聲明}Form1:TForm1;implementation{執(zhí)行部}{$R*.dfm}{編譯器指令,用于查找資源}procedureTForm1.Button1Click(Sender:TObject);beginclose;end;procedureTForm1.Edit1KeyPress(Sender:TObject;varKey:Char);constMyPass='ZJH';beginifkey=#13thenbegin……end;end;end.{初始部}{結(jié)束部}第六頁,共41頁。Delphi程序開發(fā)一般包括設(shè)計(jì)、調(diào)試和運(yùn)行三個(gè)階段,其調(diào)試階段可能的錯(cuò)誤類型包括:語法錯(cuò)誤、運(yùn)行錯(cuò)誤和邏輯錯(cuò)誤三種類型;程序調(diào)試包括運(yùn)行到光標(biāo)(F4)、運(yùn)行到斷點(diǎn)(F9)、步入(F7)、步越(F8)以及設(shè)置輸出信息等方法,其技巧與能力注意在實(shí)踐中培養(yǎng);2.2.運(yùn)行錯(cuò)誤與異常處理異常處理對(duì)增強(qiáng)程序的健壯性意義重大;Delphi的運(yùn)行錯(cuò)誤是其代碼執(zhí)行過程中產(chǎn)生的事件,而異常則是該事件創(chuàng)建的對(duì)象;Delphi異常對(duì)象的基類是Exception,在單元SysUtils中定義;異常處理包括結(jié)構(gòu)化異常處理和用戶自定義異常處理兩大類,具體方法見案例。第七頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.0.引例:“一元二次方程萬能求解器設(shè)計(jì)與實(shí)現(xiàn)

2.1基本數(shù)據(jù)類型整型類型所占字節(jié)數(shù)數(shù)值范圍Integer4-2147483648~2147483647shortint1-128~127smallint2-32768~32767longint4-2147483648~2147483647int648-263~263byte1-128~127word2-32768~32767longword40~4294967295cardinal40~4294967295第八頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.1基本數(shù)據(jù)類型實(shí)型類型所占字節(jié)數(shù)數(shù)值范圍single41.5×10-39~3.4×1038real85.0×10-324~1.7×10308double85.0×10-324~1.7×10308currency8-922337203685477.5808~extended103.6×10-4951~1.1×104932comp8-263+1~263+1real4862.9×10-9~1.7×1038第九頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.1基本數(shù)據(jù)類型字符與字符串型類型所占字節(jié)數(shù)數(shù)值范圍char1擴(kuò)展ANSI字符集AnsiChar1擴(kuò)展ANSI字符集WideChar2Unicode字符集String231個(gè)字符需4~2GB內(nèi)存Shortstring255個(gè)字符集需2~256B內(nèi)存AnsiString231個(gè)字符需4~2GB內(nèi)存WideString230個(gè)字符需4~2GB內(nèi)存第十頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.1基本數(shù)據(jù)類型布爾型類型所占字節(jié)數(shù)數(shù)值范圍Boolean10/F,1/TByteBool10/F,1/TWideBool20/F,1/TLongBool40/F,1/T第十一頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.1基本數(shù)據(jù)類型強(qiáng)制類型

轉(zhuǎn)換函數(shù)函數(shù)數(shù)值范圍IntTostr(value:integer)

IntTostr(value:int64)將整型與長整型轉(zhuǎn)換為字符串Floattostr(value:extended)實(shí)型轉(zhuǎn)換為字符串Strtofloat(consts:string)將字符串轉(zhuǎn)換為實(shí)型Strtoint(consts:string)

strtoint64(consts:string)將字符串轉(zhuǎn)換為整型或長整型第十二頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.2標(biāo)識(shí)符標(biāo)識(shí)符不能超過255個(gè)字符,其作用域分為過程(函數(shù))級(jí)、單元級(jí)和程序級(jí)三個(gè)層次。標(biāo)識(shí)符被重定義后,遵循“縣官不如縣管”原則第十三頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.3高級(jí)數(shù)據(jù)類型高級(jí)數(shù)據(jù)類型類型語法示例備注枚舉型Type

month=(Jan,Feb,Mar,Apr…);

VarMyM:Month;相應(yīng)函數(shù):Ord()、Pred()、Succ()、Low()和High();次序由0開始子界型Type

LowerChar=‘a(chǎn)’..’z’;Var

MyChar:Lowerchar集合型Type

<集合類型名>=setof<基類型>基類型必須是順序類型中的字符型、邏輯型、枚舉型和子界型;如其基類型有n個(gè)元素,則集合變量有2n個(gè)值靜態(tài)數(shù)組Type

Mydata1=array[1..5]ofreal;

Mydata2=array[1..5,1..6]ofint64;第十四頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.3高級(jí)數(shù)據(jù)類型高級(jí)數(shù)據(jù)類型類型語法示例備注動(dòng)態(tài)數(shù)組Type

Mydata1=arrayofreal;

Mydata2=arrayofarrayofint64;

var

data1:Mydata1;

data2:Mydata2;

setlength(data1,3)

setlength(data2,2,3)動(dòng)態(tài)數(shù)組下標(biāo)最小值為0setlength(data1,3)為data1[0],data1[1],data1[2]允許創(chuàng)建第一維固定,其他維不固定的多維動(dòng)態(tài)數(shù)組記錄型Type

MyStudent=record

ID:string[6];

Name:string[8];

end;Var

MyPerson:MyStudent;WithMypersondo

begin

id:=‘951708’;

Name:=’張建華’;

end;

MyPerson.ID:=‘951708’;第十五頁,共41頁。第二講Delphi常量、變量與數(shù)據(jù)類型2.3高級(jí)數(shù)據(jù)類型高級(jí)數(shù)據(jù)類型類型語法示例備注函數(shù)有類型指針變量Type

MyPoint=^integer;

var

P1:MyPoint;VarP1:^integerP1=@MyAge;P1^=32;New()和dispose():前者分配由指針?biāo)割愋蜎Q定大小的內(nèi)存單元給動(dòng)態(tài)指針變量,并把該區(qū)域的初始地址賦給指針變量;后者刪除前者創(chuàng)建的動(dòng)態(tài)變量,并釋放相應(yīng)的內(nèi)存空間。Getmen()和freemen():前者為動(dòng)態(tài)變量分配一塊制定大小的內(nèi)存空間,并把該區(qū)域的初始地址賦給指針變量;后者刪除前者創(chuàng)建的動(dòng)態(tài)變量,并釋放相應(yīng)的內(nèi)存空間。字符指針類型Var

P:Pchar;

s:string;

begin

s:=‘zjh’:

p:=@s;

end;無類型指針變量可以指向任何類型變量,但要引用無類型指針變量所指向的變量,必須先將其轉(zhuǎn)換為確定的類型。無類型指針變量Var

MyPerson:Pointer;第十六頁,共41頁。第三講運(yùn)算符與表達(dá)式3.1常見運(yùn)算符算術(shù)運(yùn)算符類型意義備注-取負(fù)單目運(yùn)算符+取正+加法運(yùn)算雙目運(yùn)算符7Div8=07Mod8=7-減法運(yùn)算*乘法運(yùn)算/除法運(yùn)算Div整除運(yùn)算Mod求模運(yùn)算第十七頁,共41頁。第三講運(yùn)算符與表達(dá)式3.1常見運(yùn)算符關(guān)系運(yùn)算符類型意義備注>大于運(yùn)算結(jié)果為邏輯值<小于>=大于等于<=小于等于=等于<>不等邏輯運(yùn)算符not求反Truexorfalse=trueFalsexortrue=trueTruexortrue=falseFalsexorfalse=falseAnd與運(yùn)算Or或運(yùn)算xor異或運(yùn)算第十八頁,共41頁。第三講運(yùn)算符與表達(dá)式3.1常見運(yùn)算符位運(yùn)算符類型意義目數(shù)備注not按位求反單目運(yùn)算運(yùn)算對(duì)象與運(yùn)算結(jié)果均為整數(shù),按二進(jìn)制位運(yùn)算。移位運(yùn)算,移出的空位一律補(bǔ)0。and按位與雙目運(yùn)算or按位或xor按位異或shl左移shr右移字符串

運(yùn)算符+連字符運(yùn)算符的優(yōu)先級(jí):@,not>

,or,xor>=,<>,<,>,<=,>=,in,is*,/,div/mod,and,shl,shr,as>+,-雙目運(yùn)算符的結(jié)合性是從左到右,單目運(yùn)算符的結(jié)合性是從右到左第十九頁,共41頁。第三講運(yùn)算符與表達(dá)式3.2表達(dá)式用運(yùn)算符將操作數(shù)連接而成的式子,即表達(dá)式。表達(dá)式的類型由運(yùn)算符號(hào)和操作數(shù)的類型決定。常見的表達(dá)式類型有:算術(shù)表達(dá)式,關(guān)系表達(dá)式,邏輯表達(dá)式,位表達(dá)式,字符串表達(dá)式和混和表達(dá)式等。計(jì)算表達(dá)式,首先需要確定運(yùn)算符號(hào)的功能,而后確定計(jì)算的順序。第二十頁,共41頁。第四講Delphi語句4.1順序語句類型示例備注空語句;賦值語句x;=2;注釋語句{低估}(*dsg*)4.2判斷語句類型示例類型1If<條件>then[<語句1>][Else<語句2>];類型2Case<>of

<整常型表達(dá)式1>:<語句1>;

<整常型表達(dá)式n>:<語句n>;

else<語句n+1>;

end;第二十一頁,共41頁。第四講Delphi語句4.3循環(huán)語句類型示例備注FOR語句For<循環(huán)變量>=<初值>to<終值>do

[<循環(huán)體>];Break語句可以跳出整個(gè)循環(huán),執(zhí)行<循環(huán)體>之后的語句;

Continue語句可以跳出本輪循環(huán),判斷條件是否成立,再?zèng)Q定是否開始新一輪循環(huán)。For<循環(huán)變量>=<初值>downto<終值>do

[<循環(huán)體>];WHILE語句While<條件>do

[<循環(huán)替>];Repeat語句Repeat

[<循環(huán)體>]

until<條件>;第二十二頁,共41頁。第五講過程與函數(shù)5.1過程(procedure):無返回值的子程序。標(biāo)準(zhǔn)過程類型語法消息對(duì)話框過程Showmessage(<信息內(nèi)容>);ShowmessageFmt(<信息內(nèi)容>,<參數(shù)值組>);字符串處理過程AppendStr(s1,s2);Delete(s,n,m);Insert(source,s,n);Val(s,v,code);Str(v,s)日期,時(shí)間

轉(zhuǎn)換函數(shù)DecodeDate(date,year,month,day);DecodeTime(time,hour,min,sec,msec);隨機(jī)過程Randomize;第二十三頁,共41頁。第五講過程與函數(shù)5.1過程(procedure):無返回值的子程序。類型語法事件過程當(dāng)用戶對(duì)某個(gè)對(duì)象發(fā)出動(dòng)作時(shí),觸發(fā)事件過程。自定義過程Procedure<過程名>[(<形參列表>)]

[<局部變量聲明>]

begin

[<語句>];

end;參數(shù)說明格式:[var|const]<形參名>:<類型>

Var和Const分別為地址傳遞和值傳遞;

相同類型形參用逗號(hào)隔開,不同類型用分號(hào)隔開。第二十四頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。內(nèi)部函數(shù)類型語法數(shù)學(xué)函數(shù)Sin(x);&Cos(x);&ArcTan(x);x為弧度平方與平方根函數(shù):Sqr(x);&Sqrt(x);絕對(duì)值函數(shù):Abs(x);取整函數(shù):Int(x);Trunc(x);舍入取整Round(x);取小數(shù)函數(shù)Frac(x);指數(shù)函數(shù):Exp(x);對(duì)數(shù)函數(shù):ln(x);隨機(jī)函數(shù):Random(x);圓周率函數(shù):Pi;字符處理函數(shù)大小寫轉(zhuǎn)換函數(shù):LowerCase(s);UpperCase(s);字符串比較函數(shù):區(qū)分大小寫CompareStr(s1,s2);

不區(qū)分大小寫CompareText(s1,s2);第二十五頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。內(nèi)部函數(shù)類型語法字符處理函數(shù)合并函數(shù):ConCat(s1,s2,…)定位函數(shù):Pos(s0,s);長度函數(shù):Length(s);截取函數(shù):Copy(s,n,m);進(jìn)制轉(zhuǎn)換:InttoHex(x,y);ASCII轉(zhuǎn)換成字符:Char(x);格式化字符串:Format(Flag,Args);類型轉(zhuǎn)換:IntToStr(x);FloatToStr(x);

StrToint(s);StrToFloat(s);第二十六頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。內(nèi)部函數(shù)類型語法日期時(shí)間函數(shù)Now;date;time;DateToStr(date);TimeToStr(time);DateTimeToStr(datetime);EncodeDate(year,month,day);EncodeTime(hour,min,sec,msec);DateofWeek(date);

FormatDateTime(format,datetime);第二十七頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。自定義函數(shù)聲明格式備注Function<函數(shù)名>[(<形參列表>)]:<返回類型>;

[<局部變量聲明>];

begin

[<語句>];

end;函數(shù)值通過函數(shù)名或系統(tǒng)預(yù)定義的Result帶回;當(dāng)函數(shù)名被賦值時(shí),等同于Result;當(dāng)函數(shù)名出現(xiàn)在本函數(shù)其他地方,則表示函數(shù)的遞歸調(diào)用。參數(shù)傳遞在形參前不加任何保留字或加保留字Const,為值傳遞方式,此時(shí)形參的任何變化都不會(huì)影響實(shí)參;在形參前加保留字var或Out,為地址傳遞方式,此時(shí)形參和實(shí)參共用同一內(nèi)存地址,保持同變化。第二十八頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。缺省參數(shù)Function<函數(shù)名>[(<形參名>:<類型>=<常量>)]:<返回類型>;

[<局部變量聲明>];

begin

[<語句>];

end;數(shù)組參數(shù)數(shù)組既可以作為函數(shù)的參數(shù),也可以作為函數(shù)的返回類型;同時(shí),Dephi還提供開放式數(shù)組,即作為函數(shù)形參的數(shù)組在定義時(shí)大小不確定,在調(diào)用函數(shù)(包括過程)時(shí),可以傳遞不同大小的同類型數(shù)組作為實(shí)參。第二十九頁,共41頁。第五講過程與函數(shù)5.2函數(shù)(function):具有返回值的子程序。重載同名過程或函數(shù)對(duì)應(yīng)多個(gè)具體的實(shí)現(xiàn);

要求彼此間在參數(shù)個(gè)數(shù)、參數(shù)類型上有所不同;

如定義缺省形參,調(diào)用前必須能讓系統(tǒng)區(qū)分具體的調(diào)用過程與函數(shù)。嵌套即在一個(gè)程序中調(diào)用另一個(gè)程序;外層過程或函數(shù)必須完全包含在內(nèi)層過程或函數(shù)之中;

計(jì)算由內(nèi)而外,逐層外推。遞歸即在一個(gè)程序中直接或間接調(diào)用程序本身;

遞歸包括直接遞歸和間接遞歸兩類;無限遞歸沒有意義。第三十頁,共41頁。第五講輸入與輸出5.1輸入與輸出對(duì)話框輸入與輸出類型語法消息對(duì)話框過程Showmessage(<信息內(nèi)容>);ShowmessageFmt(<信息內(nèi)容>,<參數(shù)值組>);Messagedlg(<信息內(nèi)容>,<對(duì)話框類型>,<按鈕組>,HelpContents);MessagedlgPos(<信息內(nèi)容>,<對(duì)話框類型>,<按鈕組>,HelpContents,X,Y);輸入對(duì)話框<字符型變量>:=inputbox(<對(duì)話框標(biāo)題>,<信息內(nèi)容>,<缺省內(nèi)容>);<邏輯型變量>:=inputquery(<對(duì)話框標(biāo)題>,<信息內(nèi)容>,<字符串變量>);第三十一頁,共41頁。第五講輸入與輸出5.2鍵盤事件鍵盤事件類型語法onKeyDownKeydown(sender:Tobject;VarKey:Word;Shift:TShiftState)Key:Vk_Back、VK_UP……|TpyeTShiftState=setof(ssshift,ssalt…)|見例子之手寫板onKeyPressKeyPress(sender:Tobject;VarKey:Char)onKeyUpKeyUp(sender:Tobject;VarKey:Word;Shift:TShiftState)Key:Vk_Back、VK_UP……|TpyeTShiftState=setof(ssshift,ssalt,ssleft,ssCtrl,ssMiddle…)第三十二頁,共41頁。第五講輸入與輸出5.3鼠標(biāo)事件鼠標(biāo)事件類型語法OnClickClick(Sender:Tobject)OnDblClickDblClick(Sender:Tobject)onMouseDownMouseDown(Sender:Tobject;Btton:TMouseBtton;Shift:TshiftState;x,y:Integer)TMoustButton=(mbLeft,mbRight,mbMiddle)TpyeTShiftState=setof(ssshift,ssalt,ssCtrl…)onMouseUp同onMouseDownonMouseMoveMouseMove(Sender:Tobject;Shift:TshiftState;x,y:Integer))見界面設(shè)計(jì)實(shí)驗(yàn)之手寫板第三十三頁,共41頁。第五講輸入與輸出5.鼠標(biāo)拖放鼠標(biāo)拖放步驟內(nèi)容步驟1將源和目標(biāo)的DragMode設(shè)置為dmManual步驟2開始鼠標(biāo)拖放狀態(tài):BeginDrag(immediate:Boolean;threshold:Integer)步驟3目標(biāo)準(zhǔn)備接受:DragOver(Sender,Source:Tobject;X,y:Integer;State:TDragState;VarAccept:Boolean)步驟4通過目標(biāo)對(duì)象OnDragOver事件完成拖放交接。見界面設(shè)計(jì)實(shí)驗(yàn)之密碼拖放解析第三十四頁,共41頁。第六講界面設(shè)計(jì)6.1窗體屬性作用CaptionNameTopLeftWidthHeightScaleWidthScaleHeightAlignBorderIcon設(shè)置系統(tǒng)菜單和窗口控制按鈕Position窗體的顯示位置與大小BorderStyle邊框類型ColorFontVisibleEnableFormStyleWindowsSate方法作用CreateShowCloseCloseQueryReleaseShowModalCanvasPrint事件作用OnCreateOnCloseQueryOnCloseOnDesStroyOnShowOnhide靜態(tài)與動(dòng)態(tài)創(chuàng)建新窗體以及MDI窗體見界面設(shè)計(jì)實(shí)驗(yàn)FrmEx第三十五頁,共41頁。第六講界面設(shè)計(jì)6.2常見組件組件備注LabelNameCaptionFontColorTransParentAlignmentLayoutTEdit屬性:NameTextAutosizeEnablePassWordCharreadonlyMaxLengthCharCaseSelTextBorderStyle方法:clearselectall事件:OnChangeKeyPressTMemoLinesScrollBallWantReturnWantTabTButtonCaptionFont|OnclickOnMouseMove/Up/DownTBitBtnCaptionKindGlyphLayoutMarginSpacingTCheckBoxCheckedAlignmentStateCaptionRadioGroup|GroupBox、Panel+TRadioBut

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論