Center table.col
Posted: Sat Apr 05, 2008 8:56 am
Hello
This sample clears table-columns (is oK).
I want to set table-columns (3 to 6) to center, left or right.
What's to do ? (important lines are 24, 25 and 28!! ).
Jürgen
//6spaltige Tabelle - Spalten 3 bis 6 sollen zentriert,linksbündig oder rechtsbündig formatiert werden
1 procedure TForm1.Button1Click(Sender: TObject);
2 var r,c, itemNo,data, styleNo,paraNo, v,b: integer;
3 s: string;
4 item: TCustomRVItemInfo;
5 begin
6
7 if (not memo.GetCurrentItemEx(TRVTableItemInfo, rve, TCustomRVItemInfo(rveTable))) then begin
8 ShowMessage('Es wurde keine Tabelle gewählt!');
9 exit;
10 end;
11
12 try
13 memo.GetCurrentItemEx(TRVTableItemInfo, rve, item);
14 ItemNo := memo.GetItemNo(rveTable);
15 memo.BeginItemModify(ItemNo, Data);
16 anzSpa_rve:= rveTable.Rows[0].Count;
17
18 s:=''; v:=2; b:=5; //Spalten 3 bis 6
19
20 for r := 0 to rveTable.Rows.Count-1 do begin
21 for c:=v to b do begin
22 if rveTable.Cells[r,c]<>nil then begin
23 if (rveTable.Cells[r,c].GetRVData.GetItemStyle(0)>=0) then begin
24 StyleNo := rveTable.Cells[r,c].GetRVData.GetItemStyle(0); //übernimmt bestehende Formatierung
25 ParaNo := rveTable.Cells[r,c].GetRVData.GetItemPara(0);
26 //s:=rveTable.Cells[r,c].GetRVData.GetItemTextA(0); //übernimmt Zellinhalt
27 rveTable.Cells[r,c].clear;
28 rveTable.Cells[r,c].AddNL('',StyleNo,ParaNo); //Zelle muss belegt werden, aber ... (siehe 24, 25)
29 //rveTable.Cells[r,c].AddNL(s,StyleNo,ParaNo); //übergibt Zellinhalt + übernimmt bestehende Formatierung
30 s:='';
31 end;
32 end;
33 end;
34 end;
35
36 finally
37 if rveTable<>nil then begin
38 memo.EndItemModify(ItemNo, Data);
39 memo.Change;
40 end;
41 end;
42 end;
This sample clears table-columns (is oK).
I want to set table-columns (3 to 6) to center, left or right.
What's to do ? (important lines are 24, 25 and 28!! ).
Jürgen
//6spaltige Tabelle - Spalten 3 bis 6 sollen zentriert,linksbündig oder rechtsbündig formatiert werden
1 procedure TForm1.Button1Click(Sender: TObject);
2 var r,c, itemNo,data, styleNo,paraNo, v,b: integer;
3 s: string;
4 item: TCustomRVItemInfo;
5 begin
6
7 if (not memo.GetCurrentItemEx(TRVTableItemInfo, rve, TCustomRVItemInfo(rveTable))) then begin
8 ShowMessage('Es wurde keine Tabelle gewählt!');
9 exit;
10 end;
11
12 try
13 memo.GetCurrentItemEx(TRVTableItemInfo, rve, item);
14 ItemNo := memo.GetItemNo(rveTable);
15 memo.BeginItemModify(ItemNo, Data);
16 anzSpa_rve:= rveTable.Rows[0].Count;
17
18 s:=''; v:=2; b:=5; //Spalten 3 bis 6
19
20 for r := 0 to rveTable.Rows.Count-1 do begin
21 for c:=v to b do begin
22 if rveTable.Cells[r,c]<>nil then begin
23 if (rveTable.Cells[r,c].GetRVData.GetItemStyle(0)>=0) then begin
24 StyleNo := rveTable.Cells[r,c].GetRVData.GetItemStyle(0); //übernimmt bestehende Formatierung
25 ParaNo := rveTable.Cells[r,c].GetRVData.GetItemPara(0);
26 //s:=rveTable.Cells[r,c].GetRVData.GetItemTextA(0); //übernimmt Zellinhalt
27 rveTable.Cells[r,c].clear;
28 rveTable.Cells[r,c].AddNL('',StyleNo,ParaNo); //Zelle muss belegt werden, aber ... (siehe 24, 25)
29 //rveTable.Cells[r,c].AddNL(s,StyleNo,ParaNo); //übergibt Zellinhalt + übernimmt bestehende Formatierung
30 s:='';
31 end;
32 end;
33 end;
34 end;
35
36 finally
37 if rveTable<>nil then begin
38 memo.EndItemModify(ItemNo, Data);
39 memo.Change;
40 end;
41 end;
42 end;