全ては時の中に…

システム開発全般の技術や開発に役立つツール、プログラミングのサンプルを紹介しています。

コントロール

【VB.NET】DataRepeaterコントロールのサンプル

Power Pack 3.0で追加されたDataRepeaterコントロールの利用方法について説明します。
このコントロールは、DataGridViewを利用せず、Accessの一覧画面のような画面を作成する場合に利用します。

以下、サンプル。
続きを読む

【VB.NET】スレッドで生成した別のクラスからフォームのコントロールを扱う

以前の記事「【VB.NET】スレッドからフォームのコントロールを扱う」の応用。

進行状況を表示する必要がある処理をフォームとは、別のクラスにすることは多い。
その場合に実装しているクラスからプログレスバー等を操作する場合の方法について説明する。

以下の2つの技法の組み合わせで実現できる。
 ・「【VB.NET】スレッドからフォームのコントロールを扱う
 ・「【VB.NET】他のフォームに引数を受け渡す方法
  →フォームコントロールを引数として渡す方法を利用する。

以下、サンプル。
続きを読む

【VB.NET】スレッドからフォームのコントロールを扱う

今回は、VB.NETでスレッドを扱う際にメインスレッドとは異なるスレッドからフォームのコントロールを操作する方法について説明する。

以下、スレッドについての簡単な説明。
 ・プログラムを実行すると、プロセスという単位で管理される。
 ・プロセスには、メインスレッドが必ず生成される。
 ・スレッドを意識しないプログラムの場合、このメインスレッドのみで処理を行うことになる。
 ・メインスレッド以外のスレッドを使って処理することを指す。

Windowsアプリケーションでスレッドを作成した場合、フォームやフォームに配置したコントロールに対する操作は保証されていない。
(ここで言う操作とは、コントロールのメソッドの実行やプロパティの操作を指す)
このような処理を想定通りに動かすためには、以下のような手順が必要となる。
続きを読む

【VB.NET】グラフコントロール(ZedGraph)

.NET用のオープンソースのグラフコントロールにZedGraphというものがある。
このコントロールを利用すると、VB.NETやC#から以下のグラフが作成できるようになる。
 1.折れ線グラフ
 2.棒グラフ
 3.円グラフ

各グラフには、バリエーションが用意されている。
そのため、帯グラフや株価チャート等のグラフも作成することができる。
詳細は、Sample Graphsにて確認できる。

現時点での最新バージョンは、以下の通り。
 ・.NET Framework 2.0用(Version 5.1.4)
 ・.NET Framework 1.1用(Version 4.6.4)

このライブラリは、ZedGraphからダウンロードできる。
続きを読む

【VB.NET】フォームに配置したコントロールの値を初期化する

以前の記事「【VB.NET】フォームに配置されているコントロールを取得する」を応用して、フォームに配置したコントロールの値を初期化する方法について説明する。
前述の記事の方法でコントロールを取得し、コントロールのオブジェクトの型によって、初期化するという方法を採る。
以下、サンプル。
続きを読む

【VB.NET】フォームに連動して、コントロールのサイズを変更する

VB.NETでフォームとコントロールのサイズを連動させるには、各コントロールのAnchorプロパティを利用する。

Anchorプロパティに「Top, Bottom, Left, Right」を指定する。
これで実行すれば、フォームサイズに連動して、各コントロールのサイズも変更される。

この方法でサイズを変更する場合には、以下の点を考慮しなければならない。
 ・コントロールの配置した場所(座標)は、変更されない。
 ・配置時のコントロールのサイズを基準に拡大縮小される。
続きを読む

【VB.NET】フォーム右上に表示される閉じるボタン(x)を無効にする

フォームの右上にある閉じるボタン(x)を無効にするには、Windows APIを利用する必要がある。
この場合に利用するAPIは、GetSystemMenuとRemoveMenuを利用する。

サンプルのソリューションは、こちら(FormCloseControlSample.zip)からダウンロードできます。
VB 2005で作成しています

以下、サンプルの説明。
続きを読む

【VB.NET】フォームに配置されているコントロールを取得する

フォームに配置されているコントロールを取得する方法について説明する。
フォームオブジェクトには、Controlesプロパティがある。
これを利用すれば、フォームに配置されているコントロールを取得することができる。

以下、サンプル。
続きを読む

【VB.NET】コントロール配置時に発生するイベント

拡張コントロールを作成していると、配置時のみ値を初期化したいことがある。
このような場合は、コンストラクタ(Newメソッド)ではなく、InitLayoutメソッドに処理を記述する。

コンストラクタに処理を記述しない理由は以下の通りである。
 ・初期化処理が2回実行されてしまう。
  →初期化処理のタイミングは、以下の通り。
    1.コントロールの配置時
    2.プログラム実行時
    (フォームの生成時等、コントロールが生成されるタイミング)
 ・Addメソッドを利用したプロパティの場合、初期値が二重登録されてしまう。
  →コンボボックスのItemプロパティやツリービューのTreeNodeプロパティ等
   ※単純な変数の初期化であれば、問題は発生しない。
続きを読む

【VB.NET】MDIで全ての子フォームを閉じた場合に親フォームのコントロールにフォーカスを移す

以前の記事「【VB.NET】MDIのアプリケーションを作成する」に関連した情報であるが、MDIで親フォームにコントロールを設置し、全ての子フォームが閉じた場合に親フォームのコントロールにフォーカスを移す方法について説明する。
サンプルのソリューションは、こちら(MDISample3.zip)からダウンロードできます。
(VB2005で作成しています)

以下、サンプルの説明。
続きを読む

【拡張コントロール】数値入力用拡張コントロール(Numeric)

数値入力用に特化したコントロールをVB 2005で作成してみました。

TextBoxコントロールを継承して作成しているので、TextBoxコントロールの機能は全て利用できます。

コントロールに追加した機能は、以下の通りです。
《メソッド》
 ・表示形式を適用して、Textプロパティに設定する。
 ・表示形式を適用していない純粋な数値をValueプロパティに設定する。
《プロパティ》
 ・FormatType … 表示形式(フォーマット)
 ・ColumnSize … 桁数の指定
 ・Value    … 値(表示形式を適用していない純粋な数値)

ダウンロードはこちら(NumericSample.zip)から
続きを読む

【VB.NET】プログラム実行時にコントロールを追加する方法

通常、フォームに表示するコントロールは、作成時に固定とされることが多い。しかし、ある項目の値によって、コントロールの数を増減させたい場合や、入力した後に新しい入力項目を追加したいといった要望がある。
こうした要望を満たすため、プログラムを実行するときに動的にコントロールを追加する方法がある。
続きを読む

【拡張コントロール】PaperSizeを拡張する

VB.NETで帳票を印刷する場合、PaperSizeクラスを使って用紙サイズを設定することになる。
PaperSizeクラスのコンストラクタは、
  PaperSize(PaperName, Width, Height)

となっているため、A4等のように既定のサイズを持つ用紙であっても、用紙名と用紙サイズ(縦横の長さ)を指定しなければならないという不便さがある。
そこで、PaperSizeクラスを拡張し、PaperKind列挙型に登録されているサイズを自動取得できるクラスを作成してみた。

続きを読む

【拡張コントロール】ListViewとPictureBoxを拡張する

.NETで提供されている標準コントロールを使っていると、頻繁に実装する機能というのが出てくる。そういった機能は、標準コントロールを継承して拡張コントロールを作成してしまえば、プログラム作成が楽になる。

というわけで、試しにいくつかの拡張コントロールを作成してみました。

今回、作成したのは、以下の2つです。
続きを読む
Recent Comments
Recent TrackBacks
Profile

ふりっつ

システムエンジニア
取得資格:
 ソフトウェア開発技術者
 MCP(70-290)
メールマガジン:
 【出張版】全ては時の中に…

メールマガジン
メルマガ登録・解除
【出張版】全ては時の中に…
 
 powered by メルマガスタンドmelma! トップページへ
ブログランキング
アクセス解析出会い




にほんブログ村 IT技術ブログへ

にほんブログ村 IT技術ブログ プログラム・プログラマへ

Amazon
スポンサー
HonyaClub.com

PCDEPOT WEB本店/OZZIO

FUJIFILMMALL(フジフイルムモール)

IT 関連資格ならクラムメディア問題集

  • ライブドアブログ