DBGrid點選標題欄實現自動排序功能

2021-10-04 19:34:57 字數 1151 閱讀 4108

通過adoquery控制項的sort屬性,配合dbgrid的ontitleclick事件,可以方便地實現此功能。sort屬性可以讓活動資料集按指定的字段進行排序,與sql語句order後面的寫法一樣(公升序asc/降序desc)。

form1;

adoconnection1: tadoconnection;

adoquery1: tadoquery;

datasource1: tdatasource;

dbgrid1: tdbgrid;

procedure tform1.dbgrid1titleclick(column: tcolumn)

;var

i: integer;

begin

// 恢復所有標題字型為預設

for i := 1 to dbgrid1.columns.count do

begin

dbgrid1.columns[i - 1].title.font.color := clwindowtext;

dbgrid1.columns[i - 1].title.font.style :=

; end;

// 設定當前標題排序方式為公升序,字型為粗體

if adoquery1.sort =

''then

begin

adoquery1.sort := column.fieldname + ' asc'

; column.title.font.style :=

[fsbold]

; end else

// 設定當前標題排序方式為降序,字型為紅色粗體

if adoquery1.sort =

(column.fieldname + ' asc'

)then

begin

adoquery1.sort := column.fieldname + ' desc'

; column.title.font.color := clred;

column.title.font.style :=

[fsbold]

; end else

// 取消當前標題排序

adoquery1.sort :='';

end;

(標題欄實戰)浮動標題欄與錨

常用選擇器 class intro 選擇class intro 的所有元素。1 id firstname 選擇id firstname 的所有元素。1 選擇所有元素。2element p選擇所有 元素。1 element element div,p 選擇所有 元素和所有 元素。1 element e...

閃動標題欄

閃動標題欄 閃動乙個視窗的標題欄意味著改變它的標題欄的外觀,例如它從活動變為不活動,或是從不活動變為活動等等。只要你能在delphi 或者 c builder 中得到視窗的控制代碼,你就可以使用windows 應用程式程式設計介面 api 函式來使該視窗的標題欄進行閃動。函式flashwindows...

動態標題欄

一 介紹 設定動態標題欄可以使用title屬性來實現。title屬性用來獲取或設定文件的標題。語法 title document.title settitle settitle 用來設定文件的標題。settitle是可選項。title 字串變數,用來儲存文件的標題。title是可選項。二 動態標題欄...