for i:=1 to ComponentCount-1 do begin
if Components[i] is TEdit then TEdit(Components[i]).Text :=”;
if Components[i] is TSsEdit then TSsEdit(Components[i]).Text :=”;
if Components[i] is TMemo then TMemo(Components[i]).Text :=”;
if Components[i] is TplDateEdit then TplDateEdit(Components[i]).SetEditEmpty;
end;
レコード型変数
■レコード型とは
任意の形式の型を自分で定義する手段である。構造体のようなもの。
例)
TRecSample = record
EMP_NO: string;
NAME: string;
BU_CD: string;
end;
…
SrcData: TRecSample;
■例
例)レコード型配列の最小要素から最大要素まで順番にループする
type
//レコード型宣言部
TEmp = Record
EMP_NO :String;
ENAME :String;
end;
…
public
//レコード型を元に、配列宣言
arrEmp : Array[1..1000] of TEmp;
end;
//従業員レコードを格納する配列の初期化
for i := Low(arrEmp) to High(arrEmp) do
begin
arrEmp[i].EMP_NO := ”;
arrEmp[i].ENAME := ”;
end;
Record型初期化
type
TRec = Record
i : Integer;
s : String;
end;
const
rSet : Array[0..2] of TRec = (
(i : 0; s : ‘1番目’),
(i : 3; s : ‘2番目’),
(i : 10; s : ‘3番目’)
)
グリット更新カーソル移動
type
TDummyDBGrid = class(TCustomDBGrid);
——————————————–>>>
procedure TForm1.Button1Click(Sender: TObject);
var
w_print,w_no : Integer;
w_sql : String;
RowCount, RN: Integer;
TopRowRecNo, CurrentRowNo: Integer;
begin
dm.sql_list.DisableControls;
CurrentRowNo := TDummyDBGrid(db_list).Row – 1;
TopRowRecNo := dm.sql_list.RecNo – CurrentRowNo;
if db_list.Fields[11].AsInteger = 0 then w_print := 1
else w_print := 0;
w_no := db_list.Fields[0].AsInteger;
w_sql := ‘UPDATE w_hurikomi_m SET w_hurikomi_m.print_flg = ‘ + IntToStr(w_print);
w_sql := w_sql + ‘ WHERE w_hurikomi_m.sql_no = ‘ + IntToStr(w_no);
with dm.ado_sql do begin
SQL.Clear;
SQL.Add(w_sql);
ExecSQL;
end;
dm.sql_list.Close;
dm.sql_list.Open;
// 指定レコードをTopRowに移動させる処理
RowCount := TDummyDBGrid(db_list).VisibleRowCount;
dm.sql_list.RecNo := TopRowRecNo;
dm.sql_list.MoveBy(RowCount);
while not dm.sql_list.BOF do
begin
RN := dm.sql_list.RecNo;
if RN = TopRowRecNo then
Break
else
dm.sql_list.Prior;
end;
// カーソルを元のカレントレコードに移動させる処理
dm.sql_list.MoveBy(CurrentRowNo);
dm.sql_list.EnableControls;
Result := True;
end;
文字列 + Null
連結する文字列にNULLが含まれている場合…下記表記参考!
strSQL := strSQL + ‘ ISNULL(a.name,’ + f + f + ‘) ‘ + ‘+’ + ‘ ISNULL(a.name_b,’ + f + f + ‘) as name_x, ‘;
Delphi CPU 画面表示変更
Delphi CPU 画面表示変更
回避方法は、レジストリーの
HKEY_LOCAL_MACHINE
SOFTWARE
Microsoft
Windows NT
CurrentVersion
AeDebug
のUserDebuggerHotKey
値を0x00000000から0x00000013に変更。
