趣味でHP(嘘は付いてないけど間違いはある必ず裏をとってね)


Windowsのソフトを作る


◆Windowsのアプリケーション作成とっかかり

◆無料でコンパイラを調達する。

私と同じでよければ「Visual express 2008」Googleする。
Express版のVisual Basic 又は Visual Cをインストールします。
登録すれば無料ライセンスなので心配ありません。
レジストリを理解しているなら無登録で動かない事はない。



◆窓を開く 下記@〜Cの習得でWindowsアプリがつくれます。

@好きな位置に文字列を表示できる。 文字表示OK
A好きな色の線を書ける。 グラフィックOK
B好きな位置に好きなボタンを配置きる。 入出力OK
Cタイマー処理でボタン押さなくても動くサブルーチンがある。

例:入力小窓 のサブルーチン



◆とっかかり
@〜Cの機能があるこのソースファイルを雛形にして
 必要なボタン、必要な表示 をさせると
 大概のWindowsアプリケーションが作成できる!


◆作成したソフトは売ってもいいとの事です。
  それも登録すればマイクロソフト社が売ってくれる。
  自分でホームページ作成して売るもよし!
  「ホームページの作り方」当ページに書いときました。
  (控除額を超える利益を出した方は確定申告をわすれずに)



◆超簡単なウインドウズソフトをVisualBasicで作ってみる。
 エクセルVBAでエクセル本体があるとかっこ悪い!
 ウインドゥズのソフト作りたいとおもったらVBがいい!



1)ググってVBの無料ライセンス版をダウンロードする。



2)無料ライセンス登録をして4)へジャンプ

如何してもライセンス登録したくない場合はレジストリを変更する。



3)レジストリ変更前には必ずエクスポートでデータセーブする。 手が滑ったりするとPC動かなくなる為



4)VB起動



5)新規プロジェクトを作成

 初期ディレクトリは
 C:\Users\user1\Documents\Visual Studio 2008\Projects
 だった。


6)プロジェクトが作成される。



7)ツールボックスを起動。



8)ButtonをつまんでForm1の上へ

他のツールの意味は本なりネットなりヘルプなりでしらべれば分かる。



9)適当にButtonをおく。そして置いたボタンをクリックする。



10)ソースになる。

  ここにボタンをおした時の動きをプログラミングする。
  ここでは1行
   MsgBox("Excelと同じ")
  をプログラミング。



11)実行ボタンおす。



12)ウインドゥが開いてプログラム開始。



13)Button1を押すと子ウインドウが開いて表示



14)発行する。


15)ウイザードにしたがって進んでいけばウインドウズソフトの出来上がり。



◆よく使うコマンド


・テキスト表示
MsgBox("Excelと同じ")
RichTextBox1.Text = "ボタン1を押した"
RichTextBox1.Text = "ボタン2を押した" + vbCrLf + "改行した"


・小窓開いて入力
Dim tosi As String
tosi = InputBox("入力してください!", Title:="入力")


・線を引く(グラフィック)
       'Graphicsクラスのインスタンスを作成
       Dim g As Graphics = PictureBox1.CreateGraphics()

       '青赤緑の直線を引く
       g.DrawLine(Pens.Blue, 50, 0, 100, 100)
       g.DrawLine(Pens.Red, 60, 10, 110, 110)
       g.DrawLine(Pens.Green, 70, 20, 120, 120)

       'Graphics によって使用されているすべてのリソースを解放
       g.Dispose()


・3択入力窓「はい」「いいえ」「キャンセル」
       'メッセージボックスを表示する
       Dim result As DialogResult = MessageBox.Show("質問をここに書く?", _
                                                    "質問", _
                                                    MessageBoxButtons.YesNoCancel, _
                                                    MessageBoxIcon.Exclamation, _
                                                    MessageBoxDefaultButton.Button2)

       'メッセージボックスを表示する
       Dim result As DialogResult = MessageBox.Show("質問をここに書く?", _
                                                    "質問", _
                                                    MessageBoxButtons.YesNoCancel, _
                                                    MessageBoxIcon.Exclamation, _
                                                    MessageBoxDefaultButton.Button2)

       '何が選択されたか調べる
       If result = DialogResult.Yes Then
           '「はい」が選択された時
           Console.WriteLine("「はい」が選択されました")
           RichTextBox1.Text = "「はい」が選択されました"
       ElseIf result = DialogResult.No Then
           '「いいえ」が選択された時
           Console.WriteLine("「いいえ」が選択されました")
           RichTextBox1.Text = "「いいえ」が選択されました"
       ElseIf result = DialogResult.Cancel Then
           '「キャンセル」が選択された時
           Console.WriteLine("「キャンセル」が選択されました")
           RichTextBox1.Text = "「キャンセル」が選択されました"
       End If


・グローバル変数定義の場所
Public Class Form1

   Dim file_name(1024) As String
   Dim file_name_pram As Long
   Dim file_contents As String

   Private Sub RichTextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles RichTextBox1.TextChanged

   End Sub


・ファイルのリード
       Dim display_u1 As String
       Dim temp_for As Long

       Call get_file_name()
       display_u1 = ""

       For temp_for = 0 To file_name_pram

           ' ファイル名表示
           display_u1 = display_u1 + file_name(temp_for) + vbCrLf
           RichTextBox1.Text = display_u1

           'ファイルリード
           Dim sR As New IO.StreamReader(file_name(temp_for))

           file_contents = sR.ReadToEnd
           display_u1 = display_u1 + file_contents + vbCrLf
           RichTextBox1.Text = display_u1

           sR.Close()

       Next temp_for


・ファイルライト
      Dim display_u1 As String
       Dim temp_for As Long

       Call get_file_name()
       display_u1 = ""

       For temp_for = 0 To file_name_pram

           ' ファイル名表示
           display_u1 = display_u1 + file_name(temp_for) + vbCrLf
           RichTextBox1.Text = display_u1

           'ファイルリード
           Dim Writer As New IO.StreamWriter(file_name(temp_for))
           Writer.WriteLine(file_contents)
           Writer.Close()

       Next temp_for





工事中
Windows アプリ作成近日公開予定。