[BlueLeaf1336]> PROGRAM> Natural Born Junk>
| history | TOP |
2002/11/01:作成
| memo | TOP |
色選択ツールを作ろうと思った時などに使用する。
TDrawGrid.OnDrawCellで表示しようとする場合は、横一列には普通しないだろうから、現在のセルの位置(何行目何列目という情報)から元の1次元配列のインデックスを求める必要がある。これは多分次のような関数になる。
function GetSafeColorIndex(AGrid: TDrawGrid): integer;
begin
Result := (AGrid.ColCount * AGrid.Row + AGrid.Col);
end;
...試してない。
| code | TOP |
(*
=================================================
WEBセーフカラー配列作成
=================================================
*)
type
TSafeColors = array[0..215] of string[7];
function SetSafeColors: TSafeColors;
var
i, j, k, index: integer;
HexParts: array[0..5] of string;
begin
//セーフカラー部品文字列設定
HexParts[0] := '00';
HexParts[1] := '33';
HexParts[2] := '66';
HexParts[3] := '99';
HexParts[4] := 'CC';
HexParts[5] := 'FF';
index := 0;
//セーフカラー文字列作成
for i := 0 to 5 do
begin
for j := 0 to 5 do
begin
for k := 0 to 5 do
begin
Result[Index] := ('#' + HexParts[i] + HexParts[j] + HexParts[k]);
Inc(Index);
end;
end;
end;
end;
(*
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
テスト
+++++++++++++++++++++++++++++++++++++++++++++++++++++++
*)
procedure TForm1.Button1Click(Sender: TObject);
var
i: integer;
SafeColors: TSafeColors;
begin
SafeColors := SetSafeColors;
for i := 0 to 215 do
begin
ShowResult(SafeColors[i]);
end;
end;
| EOF | TOP |