| 分類:[C#]
開発環境 OS:WindowsXP SP3 言語:VisualStudio2008Pro C#
いつもお世話になっております。先日印刷文字幅が合わず教えていただきありがとうございました。おかげさまでプログラムはできたのですが いつも繰り返す部分をクラスライブラリにしたいと考えました。クラスライブラリは何個か作ったのですが、今回印刷部分をクラスライブラリにしようとしたら、あれ?できない。という状況にあたってしましました。
private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { Font F_font = new Font(印刷.F_Font, 印刷.F_SIZE); for (int i = 0; i < 1000000; i++) { if (印刷.Hontai[i] == null) { break; } if ((i % 印刷.Peeji) == 0) { if (i != 0) { e.HasMorePages = false; } e.HasMorePages = true; for (int X = 0; X < 印刷.P_HD; X++) { if (印刷.Hedda[X] == null) { e.Graphics.DrawString("", F_font, Brushes.Black, 0, X * 印刷.M_PITCH); } else { e.Graphics.DrawString(印刷.Hedda[X], F_font, Brushes.Black, 0, X * 印刷.M_PITCH); } } } e.Graphics.DrawString(印刷.Hontai[i], F_font, Brushes.Black, 0, (i + 印刷.P_HD + 1) * 印刷.M_PITCH); } e.HasMorePages = false; }
ここの中身を全部クラスライブラリにして private void printDocument1_PrintPage(object sender, System.Drawing.Printing.PrintPageEventArgs e) { Print.Insatu.Kaku(string A); } と呼ぶだけにしたいのですが、クラスライブラリの作成場所で using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace Print { public class Insatu { public static void Kaku(string P, System. まで書くとコードスニペットでDrawingが出てこない。つーことはできないのか?という状態で止まっています。同じような作りのものでpaintはクラスライブラリ化できたので、できると思うのですが、書き方がどう悪いのかがわかりません。 using System; using System.Collections.Generic; using System.ComponentModel; using System.Data; using System.Diagnostics; using System.Drawing; using System.Linq; using System.Text; using System.Windows.Forms;
namespace Print { public class Insatu { public static void Kaku(string P, System.Drawing.Printing.PrintPageEventArgs e) { Font F_font = new Font(印刷.F_Font, 印刷.F_SIZE); for (int i = 0; i < 1000000; i++) { if ((i % 印刷.Peeji) == 0) { if (i != 0) { e.HasMorePages = false; } e.HasMorePages = true; for (int X = 0; X < 印刷.P_HD; X++) { if (印刷.Hedda[X] == null) { e.Graphics.DrawString("", F_font, Brushes.Black, 0, X * 印刷.M_PITCH); } else { e.Graphics.DrawString(印刷.Hedda[X], F_font, Brushes.Black, 0, X * 印刷.M_PITCH); } } } e.Graphics.DrawString(印刷.Hontai[i], F_font, Brushes.Black, 0, (i + 印刷.P_HD + 1) * 印刷.M_PITCH); } e.HasMorePages = false; } } } になればいいと思うのですが、なぜSystem.Drawingがコードスニペットで出てこないのか?原因がわからず困っています。よろしくお願いいたします。 |