在Delphi中巧用WINDOWS 的API函式

2021-04-17 06:57:17 字數 1243 閱讀 2993

應用之一:

delphi中有控制項memo,當使用應控制項輸入內容或編輯時,如何確定游標當前的位置呢?這時就可以呼叫

windows

api中的em_linefromchar和em_lineindex訊息來確定memo控制項中游標的當前行和列,具體呼叫方法的過程如下:

procedure tform1.button1click(sender: tobject);

varlinenum:longint;

charsbeforeline:longint;

begin

linenum := sendmessage(memo1.handle,em_linefromchar,

memo1.selstart,0);

charsbeforeline:=sendmessage(memo1.handle,em_lineindex,

linenum,0);

label1.caption:='line: '+inttostr(linenum + 1);

label2.caption:='position: '+inttostr((memo1.selstart -

charsbeforeline)+1);

end;

應用之二:

delphi中的控制項tlistbox沒有提供水平滾動條,如果想新增乙個水平流動條,其實也很簡單,我們只需使用

api函式給tlistbox 傳送乙個lb_sethorizontalextent訊息就行了。

源**如下:

sendmessage(listbox1.handle,lb_sethorizontalextent,2000,

longint(0));

應用之三:當我們需要獲取所執行程式的計算機的解析度時,有二種方法:①可以通過訪問

delphi提供的screen全域性變數,即screen.width和screen.height以畫素點給出螢幕的解析度。②利用

windows的

api函式getdevicecaps()來得到所用顯示器的解析度,**如下:

case getdevicecaps(getdc(form1.handle), horzres) of

640 : //對640*480解析度進行處理的**;

800 : //對800*600解析度進行處理的**;

1024: //對1024*768解析度進行處理的**;

1280: //對1280*1024解析度進行處理的**;

end;

在PowerShell中巧用 OFS

今天我們來看看powershell中的 ofs變數。說起 ofs,我們首先要知道的是在一門語言中都會有一些自動變數,這在powershell中自然也一樣,在powershell中包含了許多自動變數,我們可以通過使用get variable cmdlet來檢視當前powershell中的自變數,如下 ...

在HTML網頁中巧用URL

首先,先放出乙個位址給大家測試 1,時下流行的 可能是吧,因為最近問的人比較多 就是沒有任何檔名的url位址。比如htmlpro 其實這和伺服器設定的預設檔名有關,比如index.htm,index.html,index.asp等等,不信你試試我朋友的乙個 asp的 2,本處的檔案為index.ht...

在HTML網頁中巧用URL

首先,先放出乙個位址給大家測試 1,時下流行的 可能是吧,因為最近問的人比較多 就是沒有任何檔名的url位址。比如htmlpro 其實這和伺服器設定的預設檔名有關,比如index.htm,index.html,index.asp等等,不信你試試我朋友的乙個 asp的 2,本處的檔案為index.ht...