SSブログ
[PR]本のベストセラー

だれも書かなかったVisualBasicプログラミング入門 [プログラミング]

Visual Studio.NET2003のVisualBasic(本書ではVB7と記述)の本。

著者は個人で開発をしたり講師などをしてきた方。実践的な教え方。.NETらしいプログラミングを教えたいとしていた。使いこなせば、プログラマを補助して生産性が高く、読みやすく、訂正がしやすい、ユーザーにやさしいアプリケーションを早く作ることができるという。

第1章入門編では、実際にプログラムを作りながら、基本的な操作を解説。
第2章はプログラミング最低限必要なことを説明。著者が開発したレクチャ用プログラムも使う。
第3章はコーディンうが楽しくなる操作の秘訣。VB7にはプログラマを助けてくれる機能がたくさんある。
第4章 クラスとオブジェクトの基礎的な概念とヘルプの読み方
第5章 クラスの作成と処理。クラスの多くの内容は別の書籍で。ここでは基本だけ。
第6章 データベース処理の初歩の基本、上と同じく別書籍で詳細を解説。
第7章 コントロールでは、4つのコントロールを解説。とくにテキストボックスの多彩な機能を紹介。

付録 すべてのコントロールを短い解説付きで紹介。アイコンの一覧紹介。ショートカットの紹介。

索引 用語と操作

第1章 Visual Basic.NET入門
スタート画面では、ネットにつながっていると、新しい情報も表示してくれる。慣れてきたら便利に感じるはず。
プロフィールで、慣れているキーボード配列やウィンドウレイアウトを選べる。ヘルプも今行っている操作にあわせて選べる。初心者はVisualBasicドキュメントにするのがよい。
ソースコードの保管場所を「ツール」⇒「オプション」から設定。
変更を加えたところが自動的に保存されるように。上の同じオプションから「開いたドキュメントの変更の保存を確認」を選ぶ。

新しいプロジェクトをつくる。プロジェクトの種類⇒VisualBasicアプリケーション。テンプレート⇒Windowsテンプレート。ラベルやボタンを配置して、ボタンをおされたら文字列を表示する。Halloプロジェクトを作る。
実行させてみて、できているコードを確認。ソリューションの中にプロジェクトができる形になっている。

テキストボックスに名前を入力すると、名前入りで文字列を表示してくれるアプリを作る。
開発環境の説明。著者が使いやすいと思う開発環境の設定。画面中央がドキュメントウィンドウ。右側の上に「ソリューションエクスプローラー」「ヘルプのキーワード」「ヘルプの検索」「ヘルプの目次」。下側に「プロパティウィンドウ」「ダイナミックヘルプ」「お気に入り」
プロジェクトのファイルには、ディフォルトの名前を使わず、リーディングタグのついた名前に変更する。
リーディングタグの例
フォーム・・・frm
クラス・・・cls
モジュール・・・mod
作業中はダイナミックヘルプを表示しておくと作業中のヘルプの項目を表示してくる。
コントロールを配置し、プロパティを設定する手順を解説。
コードを書くときは、Meを使うと、そのクラスをさすことができる。そして「Me.」と打てば、後ろに選択できるメソッドがプルダウンで表示される。
変数の宣言の方法。これも開発環境が助けてくれる。
変数にもリーディングタグを。
プログラムを実行する前に、「ソリューションエクスプローラー」からプロジェクトのプロパティを開き、スタートアップ設定の名前を、自分が付けた名前に変更する。そうしないとディフォルトが入っている。(Form1など)

デジタル表示のアラーム時計を作る。
デジタル時計の表示画面をつくる。
Timerコントロールを配置する。1秒毎に起動するように設定。アラーム時計の表示画面が起動したら(frmClock_Load)タイマースタート。
タイマーが起動したら、現在の時刻を表示画面に表示。
最小化されたら(Me.WindowState=FormWindowState.Minimaized)、そこ(Me.Text)に時刻を表示するようにする。(最小化されていなければ、表示画面に時刻を表示する)
このとき、最小化してもとに戻したら、そのまま時刻が表示されてしまうのResizeイベントを使って、元の「アラーム時計」を表示するようにしておく。
アラームの設定をするフォームを付け加える。一番上にチェックボックス。チェックがいれられたら時刻と分をNumeralUpBoxで、キャンセル、終了ボタンを配置。
コード内には、アラームの設定あるなしのフラグ変数(BooLean)とアラームの時と分の変数(Integer)を設定。
コードを書きながら開発環境がコードのインデントなどを自動であわせてくれることを体験。
チェックボックスがクリック(CheckedChanges)されたら、設定ボタンがみえるようにするコード。時刻や分が変更されたら(ValueChanged)変数に設定するコード。
フォーム間でデータをやり取りするにはPablicではなく、「Pablic ReadOnly Property」でGetを使う。こうすると変数の適用範囲が狭くなる。.NETらしいプログラムになる。
最初のアラーム画面がダブルクロックされたら、アラーム設定画面が表示されるようにする。Showを使うと、開いた画面の入力が終わるらなくても、元の画面の操作ができてしまうので、ダイアログボックスを使う(ShowDialog)。このとき、デバッガの「F5=実行」と「F8=1行実行」と、ブレークポイントの設定方法を解説。
With構文で、くくるとイチイチ頭にオブジェクトを指定しないでよくなる。
最後に開いたダイアログボックスをDispose()。
アラームを設定しているときは、時計の横に、アラームという文字と設定時刻が表示されるように設定。
最後に時刻になったらユーザーに時刻を表示する画面を作成。他のフォームから時刻を得るために、受け取り用の変数(mstrTime)を設定し、「WriteOnly」なプロパティ(pstrTime)を使う。このコード内で、受け取った時刻を受け取り用の変数にSetsる。(mstrTie = Value)。
最後にタイマーが起動したときのコードの最後に、設定した時刻になったら、アラーム通知の画面を開くようにする。このとき時刻をアラーム通知画面に渡す。(ユーザに時刻を表示する画面.pstrTime = mstrTime)

アプリケーションの配布用のプログラムをつくる、デプロイメント機能。
単にアプリをインストールするバージョン
ショートカットを作って、デスクトップに配置するバージョン
取扱説明書をつけて、プログラムメニューを作るバーションを作成。

プログラムの中からエクセルを使う方法。
「ソリューションエクスプローラー」⇒「参照設定」右クリック、「参照の追加」⇒「COM」からExcelのObjectLibraryを選ぶ。入っているエクセルのバージョンによって名前が違う。
フォームのコードの一番上の「Public Class Form1」のさらに上に、「Import Excel」をいれると以後「Exel.Application」と書かなくてよい。
ここでは、ボタンを押すとエクセルに書き込めたという簡単な例をあげていた。それでもかなりコードは書く。
筆者は裏でエクセルを起動して表形式の複雑な書式を印刷させたり、ピボットを使った複雑な集計をやらせているそうである。

VBプログラムから他のアプリケーションを起動する方法の本道はProcessクラスだか、初心者用に「Shell」関数で例をあげていた。Try...End Try構文を使っていたが、解説はあとで。例ではメモ帳を立ち上げて、SendKeysで文字列を表示させるもの。



第2章 プログラミングの基礎技術
スタートページの便利な機能。プロジェクトタブでは最近開発したプロジェクト(ソリューション)の名前と最後の更新日時一覧が見れる。オンラインリソースでは、たくさんのサンプルコードがみれるので、これを見るだけでも勉強になる。キーワード検索もできる。マイプロフィールでは開発環境の働きを自分の使用する言語や環境に合わせて最適化できる。

新しいプロジェクトダイアログボックスの中を散歩するとVisualStudio2003で何ができるか理解できる。

変数の使い方。データ型一覧、宣言の仕方。変数への代入方法。定数の宣言方法と使い方。プログラムの中で決まった値を使うときは定数として宣言して値をいれておくとわかりやすい。

制御構造と演算子の説明。条件式、文字列のパターンの一致、算術演算子、代入演算子、論理演算子、ビットシフト演算子、その他の演算子。演算子の優先順位。条件判断構造。繰り返し構造。

プロシージャの説明。種類(Sub、Function、イベントハンドラ、Property)、宣言。引数。
プロシージャを作成してみる。引数なし⇒引数あり⇒値渡しと参照渡し⇒位置と名前による引数渡し、引数の省略、不特定
戻り値のあるプロシージャの例
オーバーロードで三角形の面積を計算するのに二つの方法がある場合の例で説明。

命名規則。
接頭辞+タグ+基本名+修飾子+接尾辞
m + lng + RecNum + Max⇒mlngRecNumMax
それぞれの例。
基本名のつけ方。プログラムの中での働きを明確に理解できるように記述。長くなっても「Ctrl+Space」で一覧から呼び出す習慣をつければ打鍵数も抑えられ、スペルミスもなくなる。
要素を並べるときは、「オブジェクト名+動作」 例 FormProAdd これは×AddFormProp
メニューの名前は構造にあわせてつける。 例 mnuFile,mnuEdit
名前の関連性、データベースの処理で「Price]というフィールドがあったら、列名=clmPrice, 変数名=lngPrice,表示のタイトル=StrPrice,表示する場所=txtPrice、場所のタイトル=lblPrice
コーディングも楽だし、読みやすいコードになる。
漢字は使わない。略語は規則にこだわらずわかりやすいほうがよいだろう。

プログラム要素の宣言と有効範囲。
名前の付け方。大文字と小文字は区別されないなど。
要素の特性。データ型、有効期間、スコープ、アクセシビリティ。
プログラミング要素は宣言した領域で使える、上位の領域で宣言してあれば、下位の領域で使える。下位の領域からブロック、プロシージャ、モジュール、名前空間。Paplicはほかのプロジェクトからも使えるのでグローバルという呼び方もある。
有効期間。モジュールのレベルで宣言された変数⇒アプリケーションの実行時間全体。クラスまたは構造体⇒インスタンスごとにコピーとして存在、インスタンスと同じ有効期間。プロシージャ⇒宣言されたプロシージャが実行されている間だけ。Staticで宣言した変数はプロシージャが終了しても破棄されず値を保持する。
変数の初期化の値。数値変数なら0、日付なら西暦1年1月1日午前0時など。
スコープは領域のレベルとアクセシビリティできまる。
Public=同じプロジェクト内からも、そのプロジェクトを参照している他のプロジェクトからも、そのプロジェクトからビルドされたアセンブリからもアクセスできる。グローバルとも呼ぶ。
Protected=同じクラス、または派生クラス。
Friend=同じプロジェクトからはアクセスできるが、外からはアクセスできない、通常はグローバルと考える変数はFreindで宣言し、Pablicと使い分けよう。
Protected Friend=派生クラス、同じプロジェクト、またはその両方からアクセスできる
Private=同じモジュール、クラス、または構造体だけからアクセスできる。
Dimだけで宣言した変数はPrivateになるが、明示的に記述した方がいい。

エラー処理。
Try...Catch...End Tryの説明。
When と Finallyの説明。

フォーカスイベント
フォーカスイベントの発生順序。Enter⇒GotFocus⇒Leave⇒Validating⇒Validated⇒LostFocus
これを検証するプログラムで発生の順番を確認。Validatingのバグを指摘していた。回避方法も。VS2005ではなおっているらしい。
フォーカスイベントでも検証プログラムを使って、LoustFocus、GotFoucusはうまく動いていないことを指摘していた。なるべく使わないほうがいいそうだ。
Debug.WriteLineを利用すると予期しないイベントの発生によるバグやパフォーマンス低下を発見しやすい。

データ型と型変換。宣言の方法。データ型の説明。チュートリアルプログラムを使って型変換を実際に値を使ってやってみる。
Option StrictスイッチをOnにして使うと暗黙の型変換ができなくなる。
型変換の機能と実験をチュートリアルで説明。

数値演算についてはOption Strict Onの場合例外が発生しやすい。実験で解説。

文字列の処理。チュートリアルプログラムで説明。+とか&とかTrimの説明。
charの説明。

日付時刻処理もチュートリアルで説明。DateTime型とTimeSpan型。Date型。

数値の書式指定。日付・時刻の初期式。チュートリアルで説明。

配列の使い方。一次元配列と多次元配列。最大32次元まで指定できる。添え字は0から連続番号。配列のサイズは固定されていない。無駄に大きな次元の配列をつくるとメモリの浪費。オブジェクト型の配列では複数の要素をもてるがバグになりやすいので注意。配列の初期化方法。代入。
Arrayクラスの解説。コピーしたり並べ替えたり、検索したりの例。

列挙型の使い方。曜日の列挙型の例。Enumクラス解説。

構造体。宣言、メンバのアクセシビリティ、配列、初期化、プロシージャ、変数の宣言、アクセス、構造体の代入、クラスと構造体。

イベントとハンドラ。
VB6のイベントプロシージャとVB7のイベントハンドラでの異なる動きを例で解説。
複数のオブジェクトで動作するハンドラの例。一つのイベントに対して複数のハンドラの例。

コードが動かなかった時(デバッグ)
デバッグ環境の確認。「ツール」⇒「オプション」デバッグ全般で、「起動時にシンボルが見つからないときに警告」「Intellisenseを使用して、ブレークポイントを確認」「プロパティ評価を変数ウィンドウで行う」をチェック。
青い破線は文法の誤り。ビルド時のエラー、「F5」で実行時のエラー。
論理的なミスで予想と外れた動きをしているときの原因を探すのが本来のデバッグ。Traceクラスを使う方法を解説。
ブレークポイントの設定、中断モード解説。


第3章 コーディングが楽しくなる操作の秘訣
IDE(統合開発環境)の概略。画面を水平に分割する方法。ツールウィンドウの表示。ドッキングのコツ(一度壊れると戻しにくい)。

ツールウィンドウの内容。Windowsフォーム、クリップボードリング(クリップボードの内容を表示してくれる)、ソリューションエクスプローラ、プロパティウィンドウ、クラスビュー。ヘルプの目次。ヘルプのキーワード検索、ヘルプの検索、ダイナミックヘルプ。ヘルプは困ったとき開くだけでなく、系統的な勉強にも使える。一度みたトピックをお気に入りに追加できる。

いろいろなツール
VB6のイミディエイトウィンドウはコマンドウィンドウに統合。
オブジェクトブラウザはF2で気道。
コントロールをグリッドに合わせて整列させる方法。サイズを統一する方法。デザインを固定する方法(プロパティからLockedをTrueにする)。
プロジェクトの終了は「AltQ」

楽々コーディング
クラス名を打ってドットを打つと、そのクラスのプロパティやメソッドの一覧がでるのが自動メンバ表示。ここでTなどをうつくTextなどが自動で検索される。間違って入力したら「BackSpace」や「Delete」キーが使える。
見つかった名前をエディタ上に呼び出す方法は、Tab、Enter、Space,「=」「,」など文法的に意味のあるキーを押すなど。
名前にリーディングをタグをつけておけば、頭の部分を打って、「Ctrl+Space」で入力候補が呼び出せる。
パラメータヒントもでてくるので引数も説明を読みながら入力できて便利。この機能が使えないときは「ツール」⇒「オプション」 「テキストエディタ」⇒「Basic」⇒「全般」で自動メンバ表示、パラメータヒント、をチェック。「右端で折り返す」もチェックしておくと便利。

コードエディタの便利な機能
ウィンドウの分割
名前の定義を表示。「Shift+F2」で定義にジャンプ。元に戻りたいときは「Ctrl+Shift+F2」
折り返しは「右端で折り返す」にチェックがはいっていれば自動で「_」が入る。
ブックマークのつけ方。
コメントにする。「Ctrl+K」,C  元に戻す。「Ctrl+K」,U
任意の長方形を選択するには、「Alt」キーを押しながらマウスでドラッグ。キーボードなら「Alt+Shift」を押しながら矢印キーを押す。

アウトライン機能。「Windowsフォームデザイナで生成されたコード」などのように四角で囲まれた文字列を「+」ボタンをクリックすると定義が現れる。これがアウトライン機能。
#Region "<説明文>"・・・#End Region で囲んだ部分を折りたたんで非表示にできる。
一括おりたたみは、コードエディタの何も書いてないところで右クリックして「定義に縮小」。
検索のときには「非表示のテキスト検索」をチェックしておくと折りたたんだ部分も検索してくれる。
「+」で展開「-」で折り畳みだが、「Ctrl」を押しながら「M」を2度うちするとトグルになって開いたり閉じたりする。

検索と置換。ショートカットキー。検索、置換ダイアログボックスの詳細説明。
インクリメンタル検索。一文字入力するたびに検索してくれるので、長い名前を検索するときに便利。折りたたんだところは探さないので注意。
ファイル内検索で検索する対象を選ぶ。


第4章 クラスとオブジェクトを理解する
オブジェクトはモノ。プログラミングの世界ではオブジェクトと対照的な言葉は「手続き」、従来の手続き指向プログラミングでは「処理」と「データ」は別なので、データ処理のミスがシステム全体に影響する。データを中心として「手続き」をその回りに配置して一つのパックとする考え方がうまれた、それがオブジェクト指向プログラミング。

オブジェクトの内容。
特徴がプロパティ。色や大きさなど
操作がメソッド。電源をONするなど。
操作や動きがあったときイベントが発生したして、対応するイベンドハンドラを用意。
メソッド、プロパティ、イベントをオブジェクトのメンバーという。
オブジェクトは機能(メソッド)とデータ(プロパティ)が一体化したものと考える。これをカプセル化という。
そして金型にあたるのがクラス、クラスからものを作るのをインスタンス化するという。できたオブジェクトは製品にあたる。

クラスの定義と継承
従業員の例で説明。現実の世界からどのような要素を取り出すかを「抽象化」という。
Newでクラスのインスタンス、つまりオブジェクトをつくる。
継承を天と線のクラスで説明。(Inherits Point)
フォームにコントロールを配置するのは実は、クラスのインスタンスを作っていることをコードから説明。
Excelのオブジェクト構造を使って階層構造を説明。Worksheetを一度に処理したいときは、「Worksheets」=コレクションを使う。
・「オブジェクト」とは処理とデータを一つにまとめてカプセル化したもの
・「オブジェクト」は「プロパティ」と「メソッド」と「イベント」をもっている
・「オブジェクト」は「クラス」で定義する
・「クラス」の「インスタンス」が「オブジェクト」である
・「クラス」は「継承することができる
・「オブジェクト」は階層構造をもっている。

名前空間と参照設定
「.NET Framework」の提供するライブラリはすべてクラス。
名前空間はクラスをカテゴリー別に階層的に分類するのに使う。
先に名前空間を指定しておいてから、Textboxなどどして使う。そうでないと、Windowアプリケーションのテキストボックスや、Webアプリケーションのテキストボックスなどがあるのでわからない。
Importsステートメントで指定。
実際のプログラムでどんな名前空間がインポートされているか、プロパティウィンドウで確認していた。

クラスに関するヘルプ。
ヘルプの読み方を説明しながら、.NET FrameWorkの提供するクラスの利用の仕方を説明。
ヘルプのインデックスの検索する文字列に「system.object」=クラスの祖先をいれて、そこから説明していた。
クラスのメンバ。オーバーロード(引数で区別する同じ名前のメソッド)、オーバーライド(継承したメソッドやプロパティを拡張したり変更したりする)の説明。
Sharedがついてプログラミング要素は、特定のインスタンスに関連付けられることなく、自由に使える。(詳しくは5章)


第5章 クラスを作ってみる
人を表す「Human」クラスをつくり、姓、名、生年月日、性別をもつようにする。属性をプロパティプロシージャで作成。宣言しただけで自動でコードを作成してくれる。
ここに外からプロパティを設定するためにコードを書く。ここでテスト。属性をいれて設定する、取得する、終了する、クリアするボタンを配置して処理を書く。
クラスの中で、姓と名を合体させて表示させるコード、年齢を計算するコードを書いて、フォームに表示させる。
日付にならない入力がエラーになるの、これを「Validating」イベントハンドラで処理する。Try...Catch...End Try
姓名に長いデータがはいってしまうと、保存などに問題がおきることがある。クラスでチェックしtはじくようにして使えば、プログラム全体を通してデータを使っても安全。チェックのイベントをつくる。イベントを発生させる部分を書く。実際にイベントを発生させて「F8」でおいかけてみる。

システム全体で有効な定数や変数は標準モジュールを使うが、同じことがSHあrdでもできる。年度情報をSharedで宣言する例で解説。著者はこれで標準モジュールをほとんど使わなくなった。

コレクションとは。
先ほどの人クラスでは一人しかつくっていないが、今度はコレクションにする。
コレクションのなかでもSortedListをとりあげて解説。
フォームも改造して、人を追加したり検索したりできるようにする。対応するコードの書き方と動作の解説。
解説用なのでユーザインターフェースはよくないそうだ。

便利な継承。
「人」のクラスから「従業員」のクラスを作る例。
「人
クラスをクラスライブラリで作成して、継承して利用する。人クラスはどこにあってもよい。


第6章 データベース処理の初歩
ADO.NETのごく簡単な利用法を紹介。MicrosoftAccessの「.mdb」を使う。
新しいプロジェクトから、VisualBasicプロジェクトのWindowsアプリケーションをつくり、フォームを開いて、「データフォームウィザード」を利用して「.mdb」に接続する。このウィザードにそっていくだけで、Accessの内容を表示するフォームが簡単につくれる。

データをグリッドに表示するプログラムを作りながら、データベースの処理手順を解説。
SQLを使って、DataSetを生成するプログラムが1行もコードをかかずにできてしまう。しかし名前は自分で変更しておいたほうが、のちのち役に立つ。
ADO.NETの概要として、データソースとの接続はOleDBConnection、データ処理のコマンドは、OleDBAdapter の Select Insert Update Delete、取得したデータはDatasetとまとまっていた。
ADOとの大きな違いは、動作中に継続的に接続を維持する必要がなく、データソースの内容を読み込む際と変更を加える際だけ接続を行い、読み込みや書き込みが終わると接続を自動的に切ること。
よみとったデータをグリッドに表示するコードを書く。

データベースの管理はテキストボックスを中心に、データの新規入力、消去、編集を行う。プロジェクトを作成して説明。
プログラムを作成する際に
「使いやすく、誤操作の心配のないユーザインターフェース」
「膨大な取り扱い説明書の要らないプログラム」
「訂正が簡単で読みやすいコーディング」
を考慮した、本格的プログラミングについて解説。
前につくったものを借用して名前を変える。フォームを改造してデータを表示。
移動ボタンで前後のデータを表示。
Windowフォームにデータソースの内容を表示し、データソースの処理を行うための最も簡単な方法は、連結コントロール。これには単純データ連結と、複合連結がある。
Windowフォームにはデータソースごとに「CurrencyManeger」というオブジェクトがあってデータソースの場所を追跡して監視。これは複数の連結コントロールがあっても一つだけ。
ADO.NETにはカレントレコードという概念はない。「CurrencyManeger」の「Posion」プロパティが現在位置を差す。複数のデータソースがあるとき「CurrencyManeger」が複数あり、「BindingContext:オブジェクトが管理する。
これらを利用して表示している行を移動するたびに表示がかわる部分のイベントを作成。
データの入力・訂正・削除のボタンをつくる。そして立ち上がったときは訂正などの処理ができない「ブラウズモード」にする。
新規作成の部分を作成。データのチェックをする。キャンセル、更新確認ボタンのコードを書く。新規入力のテスト。
連続入力ボタンをつくる。現在の入力を終えて、新しいインスタンスをつくるだけ(AddNew)こうするとValidationの問題でうまくいかない(フォーカスの問題。実際に動かすとわかる)そこで、Tabでフォーカスを動かすようにコードを書く回避策を解説。
「削除」ボタンの機能を書く。
「訂正」ボタンの機能を書く。訂正モードのとき重複チェックでうまくうごかないのを回避する方法を解説。
「保存」ボタンでデータベースに変更を加える。
「もとに戻す」ボタンで、データセットの「RejectChange」を使って変更を破棄する。
日付の表示の難しさについて解説。

データ処理のコードよりユーザインターフェースやエラートラップのコードのほうが多い
。コンピュータを導入した時、最も費用のかかるのが入力やデータのメンテのための人件費。こうしたユーザに親切なプログラムが人件費節約に役立つが、多くのクライアントは評価してくれないと書いてあった。


第7章 コントロール
MessageBoxを使う。ヘルプの解説でShowの下に青いアンダーラインがあるのでここをクリックして参照をよむと詳細な使い方がわかる。

ラベルの使い方と「Anchor」プロパティ。Lockedで位置や大きさが変えられなくなる。Anchorでフォームの上、右、左、どちらかからの固定位置を指定できる。ラベルの形状を変えられる。文字列が長くなった時折り返して全体を表示するか指定できる。
選択されたテキストボックスなどにあわせて表示を変更するラベルの例。
画像の扱い方。直線をラベルで扱う方法。
VB7のラベルはなかなか奥が深い。

テキストボックスの使い方。外観、文字列の内容と長さ、フォントとIME、操作の制限、元に戻す。複数行のテキストボックスと配列に取り込む方法。文字列の選択。
Appendメソッド
HideSelectionプロパティでフォーカスを失ってもテキストボックスの選択部分の反転がきえない。

データグリッドのデザインの外観を美しくする。
コレクションエディタのプロパティを使った例。

メニューの作り方。
メニューエディタはない。自分でフォームからメニューをつくる方法を解説。
ショートカットキーやイベントハンドラなど。

付録
1ショートカットキー
グローバルショートカットキー
ソリューション関係
テキストエディタのショートカットキー/移動
テキストエディタのショートカットキー/選択
テキストエディタのショートカットキー/コードエディタ
検索と置換のショートカットキー
デバッグのショートカットキー
フォームデザイナのショートカットキー

2オブジェクトアイコン一覧

3Windowsフォームコントロールの機能別一覧
テキストの編集 TextBox RichTextBox
データの表示(読み取り専用) Label LinkLabel StatusBar Notifylcon ProgressBar
などという風に分類していた。


だれも書かなかったVisualBasicプログラミング入門

だれも書かなかったVisualBasicプログラミング入門

  • 作者: 西田 雅昭
  • 出版社/メーカー: 技術評論社
  • 発売日: 2005/06/01
  • メディア: 大型本



タグ:西田 雅昭
nice!(0)  コメント(0)  トラックバック(0) 
共通テーマ:

nice! 0

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。

トラックバック 0

[PR]Kindle ストア ベストセラー

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。