|
実際のプログラムは、次のようなものです。
// PrintDialog の新しいインスタンスを生成する (デザイナから追加している場合は必要ない) PrintDialog printDialog1 = new PrintDialog();
// PrinterSettings の新しいインスタンスを生成する (必須) printDialog1.PrinterSettings = new System.Drawing.Printing.PrinterSettings();
// 印刷範囲で指定可能な最大ページ数を設定する printDialog1.PrinterSettings.MaximumPage = short.MaxValue;
// 印刷範囲で指定可能な最小ページ数を設定する printDialog1.PrinterSettings.MinimumPage = 1;
// 印刷開始ページを設定する printDialog1.PrinterSettings.FromPage = 1;
// 印刷終了ページを設定する printDialog1.PrinterSettings.ToPage = 1;
// [ファイルへ出力] チェックボックスをオンにする (初期値 false) printDialog1.PrintToFile = true;
// 印刷範囲のページ指定を有効にする (初期値 false) printDialog1.AllowSelection = true;
// 印刷範囲のページ指定を有効にする (初期値 false) printDialog1.AllowSomePages = true;
// 部数を設定する printDialog1.PrinterSettings.Copies = 1;
// [ヘルプ] ボタンを表示する (初期値 false) printDialog1.ShowHelp = true;
// ダイアログを表示し、戻り値が [OK] の場合は印刷の処理を実行する if (printDialog1.ShowDialog() == DialogResult.OK) { //printDocument1.DefaultPageSettings.Landscape = true; //印刷する文字列と位置を設定する printingText = richTextBox1.Text; printingPosition = 0; //印刷に使うフォントを指定する printFont = new Font("MS Pゴシック", 12); //PrintDocumentオブジェクトの作成 System.Drawing.Printing.PrintDocument pd = new System.Drawing.Printing.PrintDocument(); //PrintPageイベントハンドラの追加 pd.PrintPage += new System.Drawing.Printing.PrintPageEventHandler(pd_PrintPage); //印刷を開始する pd.Print();
}
// 不要になった時点で破棄する (正しくは オブジェクトの破棄を保証する を参照) printDialog1.Dispose();
どこかしら問題点はあるでしょうか?
|