>続きは明日以降ということで.
報告です.
結果的に[印刷プレビュー]ボタンは無効にも非表示もできませんでした.
ハンドルまたはIDの値が取得できません(添付図の上図参照)
ハンドルあるいはID値が取得できれば,例えば以下のように値をセットしたり
できます.
(結果は添付図の下の図参照)
procedure TplExcelFormEx2.WndProc(var Message: TMessage);
var
DialogWnd : HWND;
S1,S2,S3 : String;
Id1,Id2,Id3 : Integer;
begin
inherited;
if Message.Msg = WM_ACTIVATE then begin
DialogWnd := Message.LParam;
if GetWindowTextStr(DialogWnd) <> '印刷' then exit;
Id1:=33; //Excel97,2000印刷開始頁コントロールID
Id2:=34; //Excel97,2000印刷終了コントロールID
Id3:=40; //Excel97,2000印刷部数コントロールID
S1 :=IntToStr(1); //印刷開始頁
S2 :=IntToStr(10); //印刷終了頁
S3 :=IntToStr(5); //印刷部数
//印刷開始頁等に文字列をセット}
SendDlgItemMessage(DialogWnd, Id1, WM_SETTEXT, 0, LongInt(PChar(S1)));
SendDlgItemMessage(DialogWnd, Id2, WM_SETTEXT, 0, LongInt(PChar(S2)));
SendDlgItemMessage(DialogWnd, Id3, WM_SETTEXT, 0, LongInt(PChar(S3)));
end;
end;
|