2009年06月24日


VB.NET : 印刷(1)

デザイナ上に必要最低限のコントロールを配置し、
必要最低限のコードを書き込みます

1) ボタンをクリックすると、プレビューダイアログを表示
2) プレビューダイアログの初期位置の設定

Vbprint
Imports System.Drawing.Printing

Public Class Form1

	' *******************************************************************
	' 呼び出し
	' *******************************************************************
	Private Sub Button1_Click(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles Button1.Click

		' 開始
		PrintPreviewDialog1.ShowDialog()


	End Sub

	' *******************************************************************
	' プレビューダイアログの初期処理
	' ( デザイナのイベントから作成します )
	' *******************************************************************
	Private Sub PrintPreviewDialog1_Load(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles PrintPreviewDialog1.Load

		' デスクトップ左上
		PrintPreviewDialog1.DesktopLocation = New System.Drawing.Point(0, 0)

	End Sub
End Class

まだなにも設定されていないので、ボタンを押すと以下のようなダイアログが表示されます

Vbprint_blank

そこで、印刷用のドキュメントオブジェクトを作成し、
プレビューダイアログのプロパティにセットして最低限の環境を整えます
Imports System.Drawing.Printing

Public Class Form1

	' 印刷処理の実体の定義
	Private pd As PrintDocument = Nothing

	' *******************************************************************
	' 呼び出し
	' *******************************************************************
	Private Sub Button1_Click(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles Button1.Click

		' 開始
		PrintPreviewDialog1.ShowDialog()

	End Sub

	' *******************************************************************
	' プレビューダイアログの初期処理
	' ( デザイナのイベントから作成します )
	' *******************************************************************
	Private Sub PrintPreviewDialog1_Load(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles PrintPreviewDialog1.Load

		' デスクトップ左上
		PrintPreviewDialog1.DesktopLocation = New System.Drawing.Point(0, 0)

	End Sub

	' *******************************************************************
	' 初期処理
	' *******************************************************************
	Private Sub Form1_Load(ByVal sender As System.Object, _
	ByVal e As System.EventArgs) Handles MyBase.Load

		' 印刷処理の実体の作成
		pd = New PrintDocument()
		' プレビューのプロパティにセット
		PrintPreviewDialog1.Document = pd

	End Sub
End Class

Vbprint_none

■ 以下の記事へと続きます
VB.NET : 印刷(2)


タグ:Print
posted by at 2009-06-24 17:12 | VB.NET Framework2.0 | このブログの読者になる | 更新情報をチェックする
Seesaa の各ページの表示について
Seesaa の 記事がたまに全く表示されない場合があります。その場合は、設定> 詳細設定> ブログ設定 で 最新の情報に更新の『実行ボタン』で記事やアーカイブが最新にビルドされます。

Seesaa のページで、アーカイブとタグページは要注意です。タグページはコンテンツが全く無い状態になりますし、アーカイブページも歯抜けページはコンテンツが存在しないのにページが表示されてしまいます。

また、カテゴリページもそういう意味では完全ではありません。『カテゴリID-番号』というフォーマットで表示されるページですが、実際存在するより大きな番号でも表示されてしまいます。

※ インデックスページのみ、実際の記事数を超えたページを指定しても最後のページが表示されるようです

対処としては、このようなヘルプ的な情報を固定でページの最後に表示するようにするといいでしょう。具体的には、メインの記事コンテンツの下に『自由形式』を追加し、アーカイブとカテゴリページでのみ表示するように設定し、コンテンツを用意するといいと思います。


※ エキスパートモードで表示しています

アーカイブとカテゴリページはこのように簡単に設定できますが、タグページは HTML 設定を直接変更して、以下の『タグページでのみ表示される内容』の記述方法で設定する必要があります

<% if:page_name eq 'archive' -%>
アーカイブページでのみ表示される内容
<% /if %>

<% if:page_name eq 'category' -%>
カテゴリページでのみ表示される内容
<% /if %>

<% if:page_name eq 'tag' -%>
タグページでのみ表示される内容
<% /if %>
この記述は、以下の場所で使用します