cari
Rumahpangkalan datatutorial mysqlAdvStringGrid使用方法(2)

procedureTForm1.FormCreate(Sender:TObject); begin AdvStringGrid1.FixedRows:=2; AdvStringGrid1.SaveFixedCells:= false ; AdvStringGrid1.MergeCells(1,0,2,1); AdvStringGrid1.MergeCells(3,0,2,1); AdvStringGrid1.Cells[1,0]:= 'palign="center"bIde

  1. procedure TForm1.FormCreate(Sender: TObject);
  2. begin
  3.   AdvStringGrid1.FixedRows:=2;
  4.   AdvStringGrid1.SaveFixedCells := false;
  5.   AdvStringGrid1.MergeCells(1,0,2,1);
  6.   AdvStringGrid1.MergeCells(3,0,2,1);
  7.   AdvStringGrid1.Cells[1,0] := '

     Identification

    '
    ;
  8.   AdvStringGrid1.Cells[1,1] := 'Brand';
  9.   AdvStringGrid1.Cells[2,1] := 'Type';
  10.   AdvStringGrid1.Cells[3,1] := 'CC';
  11.   AdvStringGrid1.Cells[4,1] := 'Pk';
  12.   AdvStringGrid1.Cells[3,0] := '

    Power

    '
    ;
  13.   AdvStringGrid1.BtnEdit.ButtonWidth := 24;
  14. end;
 一、Navigation——AdvancelInsert:控制当光标在最后一个CELL时是否可以按回车插入新行

二、Navigation——AdvanceOnEnter:控制按回车是否自动移到下一个CELL

三、Navigation——AllowDeleteRow:控制是否按DELETE键删除当前行

四、Navigation——AppendOnArrowDown:控制按下箭头是否可以新增一行

五、EnableWheel:=true时,一次滚动多行,EnableWheel:=False时,一次滚动一行。

六、SearchFooter—Visible:=TRUE时,会在ADVStringGrid的底部显示出搜索框

七、Options—goTabs:控制是否可用TAB键将光标移到下一CELL

八、AutoNumAlign:=True则数字类型数据在CELL里会自动右对齐

九、ADVStringGrid.AutoNumberCol(0);表示第0列按顺序显示数字,即1,2,3……

十、FloatingFooter—Visible:为TRUE时,即在ADVStringGrid底部显示求和列,要想让求和列显示小数,还需要将FloatFormat属性设置为:%g

十一、当合并行后,如果想使文字垂直居中,可以先设置ADVStringGrid的 MultilineCells 设置为 True,然后在文字前面加 #13 换行来实行

十二、改变固定列的显示样式:ControlLook——FixedGradientFrom(起始色)——FixedGradientFrom(结束色)

十三、改变单元格的背景色,可在OnGetCellColor事件中写代码实行(前提需将FLAT设置为TRUE):

  1. procedure Tfrm_dingdan.strgridGetCellColor(Sender: TObject; ARow, 
  2.   ACol: Integer; AState: TGridDrawState; ABrush: TBrush; AFont: TFont); 
  3. begin 
  4.   if ARow=0 then     //如果不加这一句,则是以下对应的整列,我这里是只改变固列,所以要把ARow设为0 
  5.     begin 
  6.       Case ACol of 
  7.         1: ABrush.Color:=RGB(227,249,248); 
  8.         2: ABrush.Color:=RGB(250,232,193); 
  9.         3: ABrush.Color:=RGB(227,249,248); 
  10.         4: ABrush.Color:=RGB(250,232,193); 
  11.         12: ABrush.Color:=RGB(227,249,248); 
  12.         14: ABrush.Color:=RGB(250,232,193); 
  13.         24: ABrush.Color:=RGB(227,249,248); 
  14.         48: ABrush.Color:=RGB(250,232,193); 
  15.         51: ABrush.Color:=RGB(227,249,248); 
  16.       End; 
  17.     END; 
  18. end; 

十四、如果在录入的过程中,要对某列做格式化,比如保留几位小数,可用ADVStringGrid的GetFloatFormat事件中操作。比如:

  1. procedure Tfrm_dingdan.strgridGetFloatFormat(Sender: TObject; ACol, 
  2.   ARow: Integer; var IsFloat: Boolean; var FloatFormat: String); 
  3. begin 
  4.   case ACol of 
  5.     4: floatformat:='%.0f';     //第4列保留0位小数 
  6.     5: floatformat:='%.3f';     //第5列保留3位小数 
  7.     6: floatformat:='%.6f';    //第6列保留6位小数 
  8.     7: floatformat:='%.5f';    //第7列保留5位小数 
  9.   end; 
  10. end;

十五、Options—goRangeSelect:控制是否可以选择多行,goRowSelect控制选中整行

、AdvStringGrid做多表头
在onIsFixedCell事件中返回true的就是表头

--------------------------------------------------------------------
2、怎样实现AdvStringGrid的列宽自动按内容调整?
   怎样实现AdvStringGrid的列宽自动按列标题宽度调整?
   autosize属性的作用是什么?
  
autosize,可以根据内容调整列宽。
自动按标题列调整,自己在其RESIZE事件里对COLWIDTHS[I]赋值就行了。

procedure AutoSizeColumns(const DoFixedCols: Boolean; const Padding: Integer);
例:AdvStringGrid1.AutoSizeColumns(False,16);
 
AdvStringGrid1.AutoSizeColumns(False,16);
第一参数:是否为固定列;第二个参数,文字后面留的空格数
 
所有单元格自动调整,由第一个参数设置是否含固定单元,
如要固定行折行显示应将其行高设为自动调整即:
AdvStringGrid1.AutoSizeRow(0);
--------------------------------------------------------------------- 
3、AdvStringGrid插入checkbox列
 把advstringgrid的option属性中的goEditing 设为true
 
 在from create事件中加入
 

  1.  for i:=1 to advstringgrid.rowcount-1 do
  2.     advstringgrid.AddCheckBox(1,i,false,false);   //其中1表示所在列数
  3.    GetCheckBoxState(col,row) 可以查询的
  4.    Bchek:Boolean;
  5.    AdvSGrid.GetCheckBoxState(Col,Arow,Bchek);

---------------------------------------------------------------------
4、stringGrid中的行或列和并
 

  1.   grdList.MergeCells(0,0,2,2);
  2.    grdList.Cells[0,0]:='123456';
  3.    advstringgrid.mergecol(3,4);
  4.    advstringgrid..MergeCells(0,0,2,2);

5、  
with advStringGrid1 do   //引用单元格时, 列数在前,行数在后.
MergeCells(0,0,1,3);   
//合并单元格.前两参数为列数行数. 后两参数分别为要合并的列数和行数
Cells[1,0] := Format('分度线( %s )',[m_sMeasureRangeUnit]);;

          MergeCells(3,JieDianStart - 1,1,1);
          Cells[3,JieDianStart - 1] := '动作方式';
          ColWidths[3] := ColWidths[3] + 10;
          Colors[3,JieDianStart - 1] := FixedColor;
          FontNames[3,JieDianStart - 1] := FixedFont.Name;
          FontSizes[3,JieDianStart - 1] := FixedFont.Size;
          FontStyles[3,JieDianStart - 1] := FixedFont.Style;


前面是我在程序中拉的一段.
控件常用事件:
//单元格可否被修改
onCanEditCell(Sender: TObject; ARow,  ACol: Integer; var CanEdit: Boolean);
begin
  if ACol = 0 then
    CanEdit := false;  //false不能修改
end;

//对齐方式
onGetAlignment(Sender: TObject; ARow,
  ACol: Integer; var HAlign: TAlignment; var VAlign: TVAlignment);
begin
     HAlign := taCenter;
     VAlign := vtaCenter;
end;
//是否固定列 ,即标题列, 在表中非开头行需要固定标题列时很有用
onIsFixedCell(Sender: TObject; ARow,
  ACol: Integer; var IsFixed: Boolean);
begin
     if(ARow = 10) then
     begin
          IsFixed := True;
     end;
end;
-------------------------------------------------------------------------------
6、如何在AdvStringGrid中为每个单元格内的字体定制颜色
在OnDrawCell事件(看名字这个控件应该有这个事件把,呵呵!)写如下代码:
(Sender as TAdvStringGrid).Canvas.Font.Color:=clNavy;
7、cell中内嵌combobox
OnGetEditorType事件
  if ACol = 1 then
  begin
        aEditor := edComboList;
        grdMain.ClearComboString;
        grdMain.AddComboString('借');
        grdMain.AddComboString('  贷');
  end;

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Mysql: Kemahiran penting untuk pemula untuk menguasaiMysql: Kemahiran penting untuk pemula untuk menguasaiApr 18, 2025 am 12:24 AM

MySQL sesuai untuk pemula untuk mempelajari kemahiran pangkalan data. 1. Pasang alat pelayan dan klien MySQL. 2. Memahami pertanyaan SQL asas, seperti SELECT. 3. Operasi data induk: Buat jadual, masukkan, kemas kini, dan padam data. 4. Belajar Kemahiran Lanjutan: Fungsi Subquery dan Window. 5. Debugging dan Pengoptimuman: Semak sintaks, gunakan indeks, elakkan pilih*, dan gunakan had.

MySQL: Data berstruktur dan pangkalan data hubunganMySQL: Data berstruktur dan pangkalan data hubunganApr 18, 2025 am 12:22 AM

MySQL dengan cekap menguruskan data berstruktur melalui struktur jadual dan pertanyaan SQL, dan melaksanakan hubungan antara meja melalui kunci asing. 1. Tentukan format data dan taip apabila membuat jadual. 2. Gunakan kunci asing untuk mewujudkan hubungan antara jadual. 3. Meningkatkan prestasi melalui pengindeksan dan pengoptimuman pertanyaan. 4. Secara kerap sandaran dan memantau pangkalan data untuk memastikan pengoptimuman keselamatan data dan prestasi.

MySQL: Ciri dan keupayaan utama dijelaskanMySQL: Ciri dan keupayaan utama dijelaskanApr 18, 2025 am 12:17 AM

MySQL adalah sistem pengurusan pangkalan data sumber terbuka yang digunakan secara meluas dalam pembangunan web. Ciri -ciri utamanya termasuk: 1. Menyokong pelbagai enjin penyimpanan, seperti InnoDB dan Myisam, sesuai untuk senario yang berbeza; 2. Menyediakan fungsi replikasi master-hamba untuk memudahkan pengimbangan beban dan sandaran data; 3. Meningkatkan kecekapan pertanyaan melalui pengoptimuman pertanyaan dan penggunaan indeks.

Tujuan SQL: Berinteraksi dengan Pangkalan Data MySQLTujuan SQL: Berinteraksi dengan Pangkalan Data MySQLApr 18, 2025 am 12:12 AM

SQL digunakan untuk berinteraksi dengan pangkalan data MySQL untuk merealisasikan penambahan data, penghapusan, pengubahsuaian, pemeriksaan dan reka bentuk pangkalan data. 1) SQL Melaksanakan operasi data melalui Pilih, Masukkan, Kemas kini, Padam Penyataan; 2) Gunakan pernyataan membuat, mengubah, drop untuk reka bentuk dan pengurusan pangkalan data; 3) Pertanyaan kompleks dan analisis data dilaksanakan melalui SQL untuk meningkatkan kecekapan membuat keputusan perniagaan.

Mysql for Beginners: Bermula dengan Pengurusan Pangkalan DataMysql for Beginners: Bermula dengan Pengurusan Pangkalan DataApr 18, 2025 am 12:10 AM

Operasi asas MySQL termasuk membuat pangkalan data, jadual, dan menggunakan SQL untuk melakukan operasi CRUD pada data. 1. Buat pangkalan data: createdatabasemy_first_db; 2. Buat Jadual: CreateTableBooks (Idintauto_IncrementPrimaryKey, Titlevarchar (100) NotNull, Authorvarchar (100) NotNull, Published_yearint); 3. Masukkan Data: InsertIntoBooks (Tajuk, Pengarang, Published_year) VA

Peranan MySQL: Pangkalan Data dalam Aplikasi WebPeranan MySQL: Pangkalan Data dalam Aplikasi WebApr 17, 2025 am 12:23 AM

Peranan utama MySQL dalam aplikasi web adalah untuk menyimpan dan mengurus data. 1.MYSQL dengan cekap memproses maklumat pengguna, katalog produk, rekod urus niaga dan data lain. 2. Melalui pertanyaan SQL, pemaju boleh mengekstrak maklumat dari pangkalan data untuk menghasilkan kandungan dinamik. 3.MYSQL berfungsi berdasarkan model klien-pelayan untuk memastikan kelajuan pertanyaan yang boleh diterima.

MySQL: Membina pangkalan data pertama andaMySQL: Membina pangkalan data pertama andaApr 17, 2025 am 12:22 AM

Langkah -langkah untuk membina pangkalan data MySQL termasuk: 1. Buat pangkalan data dan jadual, 2. Masukkan data, dan 3. Pertama, gunakan pernyataan CreatedataBase dan createtable untuk membuat pangkalan data dan jadual, kemudian gunakan pernyataan InsertInto untuk memasukkan data, dan akhirnya gunakan pernyataan PILIH untuk menanyakan data.

MySQL: Pendekatan mesra pemula untuk penyimpanan dataMySQL: Pendekatan mesra pemula untuk penyimpanan dataApr 17, 2025 am 12:21 AM

MySQL sesuai untuk pemula kerana mudah digunakan dan berkuasa. 1.MYSQL adalah pangkalan data relasi, dan menggunakan SQL untuk operasi CRUD. 2. Ia mudah dipasang dan memerlukan kata laluan pengguna root untuk dikonfigurasi. 3. Gunakan Masukkan, Kemas kini, Padam, dan Pilih untuk Melaksanakan Operasi Data. 4. Orderby, di mana dan menyertai boleh digunakan untuk pertanyaan yang kompleks. 5. Debugging memerlukan memeriksa sintaks dan gunakan Jelaskan untuk menganalisis pertanyaan. 6. Cadangan pengoptimuman termasuk menggunakan indeks, memilih jenis data yang betul dan tabiat pengaturcaraan yang baik.

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌
Akan R.E.P.O. Ada Crossplay?
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

Dreamweaver Mac版

Dreamweaver Mac版

Alat pembangunan web visual

PhpStorm versi Mac

PhpStorm versi Mac

Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

MantisBT

MantisBT

Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Penyesuai Pelayan SAP NetWeaver untuk Eclipse

Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

Versi Mac WebStorm

Versi Mac WebStorm

Alat pembangunan JavaScript yang berguna