x_app_vb2010.indd

Size: px
Start display at page:

Download "x_app_vb2010.indd"

Transcription

1 A 練習問題 この章の理解度チェック 解答例

2 第 1 章 練習問題 いいえ 違います Visual Basicには Visual Basic.NETも含まれています 文脈にもよりますが 特に現在では Visual Basicという用語は.NET 対応のVisual Basicを意味する場合が多いと言えます 2. 正解は a b c d( インタープリター ) は誤りです.NET 以降の Visual Basic は 中間言語を出力するコンパイラです また 実行時には.NET Frameworkの実行環境によって機械語に翻訳されてから実行されます 3. a b c d すべて 練習問題 はい 正しいです Visual Studioには Visual Basicのほかに Visual C# Visual C++ およびVisual Web Developerなどが含まれます 2. 正解は b c d a のソリューションは 1 つ以上のプロジェクトをまとめて管理する単位であって プロジェクトをビルドして生成させるものではありません 3. コントロールとは テキストボックスやボタンなどの ユーザーインターフェイスを構成する部品のことです ただし いくつかのコントロールには 表示を伴わない内部的なプログラム部品もあります 練習問題 つのステートメントを次の行に続けるには 行末に半角スペースとアンダーバー (_) を記述します 2. どちらの代入文も2 行にわたっていますが 1つ目の代入文は 演算子の直後で改行しているので 暗黙の行連結によって 次の行に継続するとみなされ 1つの代入文として有効です しかし 2 つ目の代入文は 演算子の直前に改行しているため 暗黙の行連結にならず 1つの代入文としては無効となります 3. いいえ 正しくありません Class から までのブロックは 1つのソースファイルの中に納まる必要があります たしかに 1つのクラスを複数のファイルに分割する場合 それぞれをパーシャルクラスと呼びますが 1 つ 1 つのパーシャルクラスは Class から まで 1 つのブロックとして閉じています 練習問題 Dim num As Integer 2. いいえ このメソッドをクラスブロックの外に記述することはできません このメソッドは クラスの構成要素の 1 つであり クラスブロックの中に記述する必要があります 3. ボタンクリックなどの操作によって駆動するメソッドは イベントハンドラー または イベントプロシージャ と呼ばれています この章の理解度チェック ( 第 1 章 ) 1. 次の 4 つです フォーム上にボタンを貼り付けて画面を構築するなど ビジュアルな環境での開発による開発生産性の向上 習得しやすさ (BASIC 言語や.NET 以前のVisual Basicから受け継ぐ構文 ).NET Framework の恩恵 ( セキュリティや信頼性 豊富なライブラリ群など ) 本格的なオブジェクト指向プログラミングによる開発生産性の向上 2..NET Frameworkに関する知識と オブジェクト指向プログラミングに関する知識です 3. プロジェクト1つがEXEファイル1つ またはDLLファイル 1つに相当するので プロジェクトは3 個必要です ソリューションは 一度に作業を行なう単位なので 最低 1つあればよく 数は限定されません 4. フォームデザイナー上にボタンが1つ貼り付いた状態になればフォームは完成です また コードは第 1 章の図 1.18(31ページ ) のようなイベントハンドラーが生成できれば完成です 具体的な手順は 1.2 節 (11 ページ ) のうち 主に プロジェクトとソリューション 基本的な画面のデザイン 基本的なコードの入力 の説明を参照してください 5. このコードは 1つのステートメントであり Visual Basicでは原則として 1 つのステートメントは 1 行で記述しなければなりません そのため 問題文にあるコードのままだと コンパイルエラーになります 正しくコンパイルする方法としては このステートメントを1 行に納めるように修正する方法や 次のように1 行目の末尾に 半角スペースとアンダーバーを付ける必要があります Label1.Text = TextBox1.Text _ + " さん こんにちは " または Visual Basic 2010からの新しい方法として 1 行目に 2

3 おいて 演算子の直後に改行する方法もあります この場合は 暗黙の行連結 と呼ばれる新機能によって 2 行目に暗黙的に継続するとみなされるので 正常にコンパイルできます 解答プログラム Chap01 WinSol つ目のイベントハンドラーを自動生成した後 そのイベントハンドラーの内部は 次のようになります このメソッドは Form1 クラスのブロック内に記述する必要があります Private Sub Button3_Click(... Dim a As Integer Dim b As Integer a = 10 b = a + 20 MsgBox(b) 解答プログラム Chap01 WinSol1-3 第 2 章 練習問題 正しくありません Visual Basicの予約語で表現されるデータ型は.NET Frameworkの共通型システム (Common Type System:CTS) によってサポートされているデータ型です よって C# のような他の.NET 対応プログラミング言語からも共通に利用できます 2. Dim と記述した場合は 予約語としての Dim として認識されます [Dim] と記述した場合 予約語としての効力がなくなり 変数名などの識別子として認識されます また "Dim" と記述した場合は 単なる Dim という文字列データとして認識されます 3. Dim x As Long, y As Short 4. データ型は値型と参照型に分類できます 値型として変数を宣言した場合は 変数の領域そのものがデータの実体を格納できます 参照型として変数を宣言した場合は 変数の領域に データの実体が格納されるわけではありません データの実体がメモリ上のどこに存在するかという位置情報 ( 参照情報 ) が 参照型の変数の領域に格納されます 練習問題 この配列変数 datの要素の型は Short 型であることがわかります Short 型の要素 5 つを持つ配列を作るには 次のように記述します 要素数は 5 個なので 配列の添え字の最大値は 4 になります dat = New Short(4){} 2. 初期値として 順に を持つ Integer 型の要素を確保するには 次のように記述します (1 行のステートメントとして記述できます ) Dim arr() As Integer = { 100, 200, 300, 400, 500, 600, 700 } 紙面の都合上 で折り返しています なお 暗黙の行連結を使用する場合 カンマの直後や 括弧 { の直後 また 括弧 } の直前に改行することが可能なので たとえば 次のような書き方も可能です Dim arr() As Integer = { 100, 200, 300, 400, 500, 600, 700 } 3. 1 行目の arr1(0,0) = 10 の配列 arr1 は二次元配列です 二次元配列は 表にたとえることができ この例では添え字が一番小さい表の端の要素に 値 10 を代入しています 2 行目の arr2(0)(0) = 10 の配列 arr2 はジャグ配列です この例では arr2(0) arr2(1) arr2(2) という要素で構成される配列があり その各要素もそれぞれが配列を表わし 先頭の arr2(0) で表わされる配列に関して その先頭の要素を arr2(0)(0) と表現しています この要素に値 10 を代入しています 練習問題 商を求める演算子は 割り算の余りを求める演算子は Mod なので 次のステートメントになります r1 = a b r2 = a Mod b 2. 変数 n の値を 20 だけ増加させるには 次のようになります n += Option StrictがOnなので Integer 型からString 型への暗黙的なデータ型変換はできません データ型変換関数を使用して 明示的なデータ型変換を行なう必要があります よって 次のようになります str = CStr(n) この章の理解度チェック ( 第 2 章 ) 1. Button2_Click イベントハンドラーは 次のようになります Private Sub Button2_Click(... Dim mile As Double = R Dim kilo As Double kilo = mile * 1.609R MsgBox( CStr(mile) + " マイルは " + CStr(kilo) + " キロです ") 3

4 プログラムを実行して [Button2] ボタンをクリックした場合 図 A.1 のようにメッセージボックスが表示されます えられます 太郎さんの環境を変更せずに 正常にコンパイルするには 暗黙的なデータ型変換を防ぐ必要があり そのためには初期化リストの各リテラルがChar 型になるよう二重引用符の後に c を付けます Dim youbi() As Char = { " 日 "c, " 月 "c, " 火 "c, " 水 "c, " 木 "c, " 金 "c, " 土 "c } 解答プログラム Chap02 WinSol2.4 図 A マイルをキロメートルに換算して表示する解答プログラム Chap02 WinSol たとえば 誕生日が1980 年 12 月 31 日の場合は 次のようになります この場合 日数の算出結果は11170 日目になります Private Sub Button3_Click(... Dim span As TimeSpan span = #8/1/2011# - #12/31/1980# MsgBox(CStr(span.Days) + " 日目です ") なお Option Strictコンパイルオプションが Offの場合は メッセージボックスを表示する部分は 次のように暗黙的なデータ型変換も可能です MsgBox(span.Days + " 日目です ") 逆にDate 型のデータに 期間である TimeSpanオブジェクトを加算して その期間が経過した日付を求めることができます 次のコードは 2008 年 1 月 1 日に 日を加算した日付を求める例です なお この構文の意味を正確に理解するには 第 7 章まで読み進める必要があります Dim dt As Date dt = #1/1/2008# + New TimeSpan(10000, 0, 0, 0) 解答プログラム Chap02 WinSol この配列は各要素が Char 型として定義されています しかし 実際の初期化リストに記述されたリテラルは 二重引用符 ( ダブルクォーテーション ) を使用しているので String 型であり データ型が異なっています Dim youbi() As Char = { " 日 ", " 月 ", " 火 ", " 水 ", " 木 ", " 金 ", " 土 " } そのため 初期値を設定する際に String 型から Char 型へ暗黙的なデータ型変換が発生します よって 太郎さんがコンパイルエラーになったのは コンパイルオプションにおいて Option Strict が On であることが考えられます また 次郎さんが正常にコンパイルできたのは Option StrictがOffであることが考 4. Button4_Click イベントハンドラーは 次のようになります 配列 youbiでは 添え字が0なら " 日 " 1なら " 月 " 2なら " 火 " という関係があるので 変換処理の元になる数値である変数 num の値を 配列の添え字に使用すれば 対応する曜日を求めることができます なお このコードの状態で実行すると 結果は水です というメッセージが表示されます Private Sub Button4_Click( Dim youbi() As Char = { " 日 "c, " 月 "c, " 火 "c, " 水 "c, " 木 "c, " 金 "c, " 土 "c } Dim num As Integer = 3 Dim ch As Char ch = youbi(num) ' 数字 曜日 MsgBox(" 結果は " + CStr(ch) + " です ") 解答プログラム Chap02 WinSol Button5_Click イベントハンドラーは 次のようになります これを実行すると 残高は と表示されます Private Sub Button5_Click(... Dim total As Integer = 10000, rank = 3 Dim purchase As Integer = 3000 Dim table() As Integer = {0, 50, 100, 300} Dim result As Integer result = purchase + table(rank) total += result MsgBox(" 現在の残高は " + CStr(total) + " です ") 解答プログラム Chap02 WinSol2.4 第 3 章 練習問題 最初の条件である 変数 aの値が10 以上 を満たしたときは 2つ目の条件式を評価しないようにするために ショートサーキットを利用する必要があります つまり 2つの条件式の結 4

5 合にはOrではなく OrElseを使用します よって 次のようになります n += 2 End While a >= 10 OrElse b <> 0 解答プログラム Chap03 WinSol3-3.2 b done 2. 次のようになります 変数 bの値に応じて分岐できるようにif の条件の部分には 変数 bを表記する条件式を記述します If b <= 0 Then c = 0 ElseIf b <= 100 Then c = a * 2 Else c = a * 3 3. 次のようになります 変数 amount の値に応じて分岐するので SelectCaseの直後に amount を記述します Select Case amount Case Is <= 0 rt = 0 Case 1 rt = 10 Case 2 rt = 15 Case 3 To 5 rt = 18 Case Else rt = 20 End Select Case 句の部分は 他のコードも考えられます たとえば Case 3 To 5 の部分は Case Is <= 5 でも正解です 4. 2つの配列変数がNothingではなく かつ等しくない場合なので ❶の条件式は次のようになります ただし 比較対象となる配列変数は参照型なので 等号 (=) の代わりに Is 演算子を使う必要があります ( この場合は否定なのでIsNot 演算子を使用します ) なお AndAlsoは演算子なので その直後で改行を行ない 暗黙の行連結を使用することができます If d1 IsNot Nothing AndAlso d2 IsNot Nothing AndAlso d1 IsNot d2 Then ❷ 練習問題 次のようになります 前問と違い While が Until になっているので 条件式の意味を逆転させれば 同じループになります つまり n < 10 を n >= 10 にします Dim n As Integer = 0 Do Until n >= 10 n += 2 Loop 解答プログラム Chap03 WinSol3-3.2 b done 3. 次のようになります カウンター変数が 8 まではループし 10 では止める必要があるので To 句の後ろは 8 にして Step 句の後ろは 2 にします こうすると 8 までループした後 次の回にカウンター変数は 10 になり その回はループせずに終了します For n As Integer = 0 To 8 Step 2 Next n 解答プログラム Chap03 WinSol3-3.2 b done 4. 次のようになります 配列 table に関して 要素を 1 つずつ確認するので Inの後ろは配列名 tableになります また 要素は Char 型なので 要素 1つを表わす変数 sujiはchar 型として定義する必要があります suji = ch の評価によって 引数が配列内に存在したことがわかった場合 それ以上ループする必要がないので Exit For ステートメントによってループから抜け出します Dim table() As Char = { " 零 "c, " 一 "c, " 二 "c, " 三 "c, " 四 "c, " 五 "c, " 六 "c, " 七 "c, " 八 "c, " 九 "c } Dim ch As Char Dim rt As Boolean = False For Each suji As Char In table If suji = ch Then rt = True Exit For Next 解答プログラム Chap03 WinSol3-3.2 b done 1. 次のようになります 条件式は n <= 8 でもかまいません Dim n As Integer = 0 While n < 10 この章の理解度チェック ( 第 3 章 ) 1. 次のようになります なお 同じアルゴリズムを実装する上で 5

6 さまざまな記述方法が考えられます これが唯一の正解というわけではありません Public Class Form1 Private Sub Button1_Click(... Dim str As String = TextBox1.Text Dim kilo As Double = CDbl(str) Dim mile As Double Dim msg As String For i As Integer = 0 To 4 mile = kilo / 1.609R ms g = String.Format( "{0,6:0.00} キロ = " + "{1,6:0.00} マイル ", kilo, mile) PrintData(msg) kilo += 10 Next 解答プログラム Chap03 WinSol3-3.z.1 マイル 2. 次のようになります ループしながら 配列 table の要素を 1 つずつ参照する必要があるので ループのカウンター変数を使用して 要素の参照には table(i) と記述します この iというカウンター変数の値は 配列の要素の順番 ( ゼロから始まる順番 ) も表わしており 曜日に対応する数値にも相当します そのため 引数 ch と配列要素が一致した場合 このカウンター変数 i の値を変換後の数値として 変数 rt に代入します なお このようなカウンター変数を使用する必要があることから 今回はFor Each...Nextステートメントではなく For...Nextステートメントを使用するほうが適当です ループ内で値が見つかった場合は もうそれ以上ループする必要はないので Exit For ステートメントを実行して ループから抜け出ます また ループ内で該当する値が見つからない場合 変数 rtの値を 1にするためには ループを始める前に初期値として 変数 rt に 1 を設定しておきます Public Class Form1 Private Sub Button1_Click(... Dim str As String = TextBox1.Text Dim ch As Char = CChar(str) Dim table() As Char = { " 日 "c, " 月 "c, " 火 "c, " 水 "c, " 木 "c, " 金 "c, " 土 "c } Dim rt As Integer = -1 For i As Integer = 0 To table.length - 1 If ch = table(i) Then rt = i Exit For Next If rt = -1 Then PrintData(" 数値に変換できません ") Else PrintData(" 数値 " + CStr(rt) + " です ") 解答プログラム Chap03 WinSol3-3.z.2 曜日順 3. 次のようになります 1マイルごとにループして リストボックスに表示する際には 次の点に注意してください 換算結果のキロが km を越えてしまった場合 その換算結果は表示してはならず ループを終了する必要があります つまり ループ継続の評価は キロに換算した直後であり 表示する前です また ループの終了後に km 地点の換算結果を表示しているので ループ内で表示する範囲は km 以下 ではなく km 未満 とするのが正しいです ( ただし ループ継続条件を km 以下としても 結果的に出力は同じになります ) Public Class Form1 Private Sub Button1_Click(... Dim mile As Double Dim kilo As Double Dim str As String mile = 1D kilo = mile * 1.609D Do st r = String.Format( "{0,6:0.00} マイル = " + "{1,6:0.000} キロ ", mile, kilo) PrintData(str) mile += 1D kilo = mile * 1.609D Loop While kilo < D kilo = D mile = kilo / 1.609D str = String.Format( "{0,6:0.00} マイル = " + "{1,6:0.000} キロ ", mile, kilo) 6

7 PrintData(str) ループ部分のアルゴリズムは他にも考えられます ループの条件句を使わず If ステートメントで条件判定し Exit Do などでループを抜け出る方法もあります たとえば Button1_Click イベントハンドラーの前半部分 ( ループ終了まで ) は 次のようにも記述できます Private Sub Button1_Click(... Dim mile As Double Dim kilo As Double Dim str As String mile = 1D Do kilo = mile * 1.609D If kilo >= D Then Exit Do str = String.Format( "{0,6:0.00} マイル = " + "{1,6:0.000} キロ ", mile, kilo) PrintData(str) mile += 1D Loop この例では Do...Loop 自体には 条件式を付けず永久ループにしており ループ内の2 行目にある条件評価によって ループ終了を判断し 必要に応じてExit Doを実行しています 解答プログラム Chap03 WinSol3-3.z.3 マラソン 第 4 章 練習問題 マイルを渡し キロメートルに換算した結果を返すメソッドは次のようになります 戻り値を返すので Functionプロシージャとして定義する必要があります Private Function MileToKilo( ByVal mile As Double) As Double Return mile * 1.609R End Function 2. 引数を渡して 戻り値を受け取るには 次のようになります ただし ここでは仮引数の名前を指定するので 名前 := 値 のように記述します rt = Add(b:=20, a:=10) 3. 値渡しでは 実引数と仮引数は異なるメモリ領域です そのため メソッドを呼び出す際には 実引数から仮引数へ情報がコピーされます ただし 引数自体が値型の場合は 実引数に格納されたデータ自体が仮引数へコピーされるのに対して 引数が参照型の場合では 実引数が持つ参照情報が仮引数へコピーされます 4. パラメータ配列を追加すると 次のようになります なお 文法上の理由で パラメータ配列は値渡し (ByVal) でなければなりません また 仮引数は配列なのでvalという名前の直後には ( ) が付きます Private Function Proc1( ByVal ParamArray val() As Long) As Integer 5. このメソッド Proc2 には オプションの引数が 2 つあります 呼び出しの際 最初の引数 xには 明示的に実引数として 10 を渡していますが 2 つ目の引数は省略しています そのため x には 10 y には既定値の 100 が渡ります 練習問題 つのステートメントは どちらも論理和を表わす論理演算子が使われています しかし 1 つ目の OrElse はショートサーキットとしての機能が作用します そのため Buildupメソッドの戻り値がゼロ以外のとき 条件式 Buildup() <> 0 が Trueとなると 後の条件式 Update() <> 0 を評価するまでもなく 条件式全体が True なので 後の条件式の評価が省略されます つまり Update メソッドを呼び出しません 一方 2 つ目のステートメントでは 論理演算子に Or が使われているので 2 つの条件式 Buildup() <> 0 と Update() <> 0 の両方とも必ず評価されます つまり Buildup メソッドと Update メソッドは必ず呼び出されます 2. Subプロシージャのブロックの中から 強制的に制御を呼び出し元に戻すには ReturnステートメントかExit Subステートメントを使用します 3. 次のようになります Private Function MileToKilo( ByVal mile As Double) As Double Dim kilo As Double kilo = mile * 1.609R MileToKilo = kilo Exit Function End Function このFunctionプロシージャでは Exit Functionステートメントを使用して呼び出し元に制御を戻しているので 明示的に戻 7

8 り値を設定する必要があります その際には プロシージャ名に値を設定するので MileToKilo = kilo のように記述します また この戻り値は Double 型なので プロシージャ宣言の先頭ステートメントに As Double を付ける必要があります 練習問題 ステートメントの例外をキャッチするには そのステートメントを Try ブロックの中に記述し 続けて 該当する例外をキャッチするCatchブロックを記述します 最低限必要なコードは次のとおりです Try c = a / b Catch ex As DivideByZeroException End Try 2. 例外が発生した際に 複数のCatchブロックがある場合 先頭のCatchブロックから順に評価して 該当したCatchブロックへ制御が移動します この例では 1 番目のCatchブロックに制御が移ります また Catchブロックの中には Exit Subステートメントがありますが このような例外構造から抜け出すステートメントを実行すると 実際に抜け出る前に必ず Finally ブロックが実行されます よって メッセージボックスには 1 3 の順番で表示されます 3. 次のようになります 例外を発生するには Throw ステートメントを用います また 例外オブジェクトのMessageプロパティに特定のメッセージを設定する場合には 例外オブジェクトのインスタンスを作成する際に そのメッセージを引数として渡します Sub Update(ByVal products() As String) If products Is Nothing Then Throw New ArgumentException( " 引数に配列が指定されていません ") この章の理解度チェック ( 第 4 章 ) 1. GetKansujiValueメソッドは 次のようになります ループしながら 配列 tableの要素を1つずつ参照する必要があるので ループのカウンター変数を使用して 要素の参照には table(i) と記述します この i というカウンター変数の値は 配列の要素の順番 ( ゼロから始まる順番 ) も表わしており 漢数字に対応する数値にも相当します そのため 引数 ch と配列要素が一致した場合 このカウンター変数 i の値を変換後の数値として返します なお このようなカウンター変数を使用する必要があることから 今回はFor Each...Nextステートメントではなく For...Next ステートメントを使用するのが適当です Private Function GetKansujiValue( ByVal ch As Char) As Integer Dim table() As Char = { " 零 "c, " 一 "c, " 二 "c, " 三 "c, " 四 "c, " 五 "c, " 六 "c, " 七 "c, " 八 "c, " 九 "c } For i As Integer = 0 To table.length - 1 If ch = table(i) Then Return i Next Return -1 End Function 解答プログラム Chap04 WinSol4-4.z Kansuji 2. WinApp4プロジェクトの Button1_Clickイベントハンドラーは次のようになります 特に 条件評価のIf...Then...Elseの部分は 同じアルゴリズムを実装する上で 色々な記述方法が考えられます これが唯一の正解というわけではありません Private Sub Button1_Click(... Dim str As String = GetData() Dim kansuji As Char Dim number As Integer Dim msg As String If str.length <> 1 Then MsgBox( " データが無効です " + "1 文字のみ入力してください ") Exit Sub Else kansuji = CChar(str) number = GetKansujiValue(kansuji) If number < 0 Then MsgBox( " データが無効です " + " 有効な 0 から 9 までの " + " 漢数字を入力してください ") Exit Sub msg = String.Format( "{0} は {1} です ", kansuji, number) PrintData(msg) 解答プログラム Chap04 WinSol4-4.z Kansuji 3. 次のコードが 販売管理プログラム WinAppSale Ver.1.2 の完成版です phrase(1) の数値変換に関する例外処理の部分は ❷ の Try から End Try までのブロックです ここでは 例外の種類に応じたCatchブロックが2つ用意されており 例外発生時には以降の処理は不要なので Exit Sub ステートメントを実行して このプロシージャの処理を終了しています また Query メソッドの例外をスローする部分は❶です この例外に対処し 8

9 ているのは ❸のTryから始まる部分です Public Class Form1 Dim products() As String = { "apple", "apple juice", "apple pie", "banana", "banana parfait", "orange", "orange juice", "peach", "peach juice", "pineapple" } Private Sub ClearData() ListBox1.Items.Clear() Private Function GetData() As String Return TextBox1.Text End Function ' 複数件のリストアップ Pr ivate Function Query( ByVal filter As String, ByRef count As Integer) As String() Dim index As Integer Dim result() As String ' 引数の検証 If count <= 0 OrElse count > 256 Then Throw New ArgumentException() ❶ index = 0 result = New String(count - 1) {} For Each product As String In products If product Like filter Then result(index) = product index += 1 If index >= count Then Exit For Next product count = index Return result End Function Private Sub Button1_Click(... Dim str As String = GetData() Dim phrase() As String Dim number As Integer Dim list() As String ' 入力項目の分解 str = Trim(str) phrase = Split(str, " ") If phrase.length >= 2 Then Try number = CInt(phrase(1)) Catch ex As InvalidCastException MsgBox(" 二つ目の項目を数値に変換 " & " できません ( 有効な数字 " & " は 1 から 256まで )") Exit Sub ❷ Catch ex As OverflowException MsgBox(" 二つ目の項目の数字が " & " オーバーフローしました " & "( 有効な数字は " & "1 から 256まで )") Exit Sub End Try Else number = products.length ' 検索 Try list = Query(phrase(0), number) Catch ex As ArgumentException MsgBox(" 二つ目の項目の数字が有効範囲 " & ❸ " にありません ( 有効な数字 " & " は 1 から 256まで )") Exit Sub End Try ' 結果表示 For i As Integer = 0 To number - 1 PrintData(list(i)) Next Private Sub Button2_Click(... ClearData() Private Sub PrintData(ByVal data As String) ' 受け取った引数をリストボックスに追加する ListBox1.Items.Add(data) ' 可能な限り下にスクロールする Li stbox1.topindex = ListBox1.Items.Count - 1 解答プログラム Chap04 Sample02-Ver リスト A が設問 4 の解答です ( 設問 5 の解答と共通のコード ) Ver.1.3 では Label1.Text = のように ラベルに表示内容 を設定していた箇所は この Ver.1.4ではSetResultメソッド呼び出しに変更します (❶ ❸ および❹) そして SetResult メソッドを別途定義して (❺) そのメソッドの中で ラベルに 9

10 表示内容を設定するようにします なお SetResultメソッドは 戻り値を返さないので Subプロシージャとして定義します 5. ゼロ割り算が発生した場合 Accumulateメソッド内で例外を捕捉する方法もありますが この例では 演算処理での実行時エラーやデータ変換での実行時エラーなどさまざまな例外に対して Button1_Clickイベントハンドラーで一括して捕捉し リストボックスにメッセージを表示しているので 同様にリスト Aの❷において DivideByZeroExceptionを捕捉できるようにします Accumulateメソッドで発生したDivideByZero Exceptionは そのまま呼び出し元に伝わり Button1_Clickイベントハンドラーの中で捕捉できます リスト A 設問 4 と 5 の解答コード Public Class Form1 Dim total As Decimal ' 累計額を格納する変数 Private Sub Form1_Load(... total = 0D SetResult("0") ❶ Private Sub Button1_Click(... Dim num As Decimal Dim phrases() As String Try phrases = Split(TextBox1.Text) If phrases.length = 1 Then num = CDec(phrases(0)) Accumulate("+", num) Else num = CDec(phrases(1)) Accumulate(phrases(0), num) Catch ex As InvalidCastException PrintData( " 正しく数値を入力してください " + ex.message) Return Catch ex As ArgumentException PrintData( " 演算子が正しくありません " + ex.message) Return Catch ex As DivideByZeroException ❷ PrintData( " ゼロでの割り算はできません " + ex.message) Return Catch ex As OverflowException total = Decimal.MaxValue Catch ex As Exception PrintData(" 予期せぬエラーです " + ex.message) Return End Try SetResult(FormatData(total)) ❸ PrintData(TextBox1.Text) TextBox1.Text = "" Private Sub Button2_Click(... ListBox1.Items.Clear() total = 0D SetResult("0") ❹ Private Sub PrintData(ByVal data As String) ListBox1.Items.Add(data) Li stbox1.topindex = ListBox1.Items.Count - 1 Pr ivate Sub Accumulate( ByVal op As String, ByVal num As Decimal) Select Case op Case "*" total *= num Case "/" total /= num Case "-" total -= num Case "+" total += num Case Else Throw New ArgumentException() End Select Private Function FormatData( ByVal data As Decimal) As String Dim result As String If data >= D AndAlso data <= D Then result = CStr(total) Else result = "Error" Return result End Function Pr ivate Sub SetResult( ByVal result As String) ❺ 10

11 Label1.Text = result 解答プログラム Chap04 Sample01-Ver.1.4 第 5 章 練習問題 文字入力するごとに アスタリスク (*) を表示するには テキストボックスの PasswordChar プロパティにアスタリスクを設定します 2. ListBox1 のリストに項目を追加するには 次のように記述します ListBox1.Items.Add(" ファースト ") ListBox1.Items.Add(" ビジネス ") ListBox1.Items.Add(" エコノミー ") 3. CheckBoxコントロールもRadioButtonコントロールも オンとオフの状態を表わすことができます しかし CheckBoxでは フォーム上に複数ある場合 コントロールごとにオンとオフの状態を独立して設定できるのに対して RadioButtonでは 1つのコンテナーの中で1つしかオンにできません つまり RadioButton は多者択一の選択に使用します 4. フォームの下辺を下方向にドラッグしてフォームを広げるとき フォームの広がりとともに フォームの下部のボタンが付いてくるようにするには AnchorプロパティにBottomを設定し Topを解除する必要があります BottomとTopを同時に設定してしまうと フォームが下方に広がり ボタンも縦方向に広がってしまいます 5. 住所: ラベルのTextプロパティを 住所(&A): に変更します さらに タブオーダーでは 住所 : ラベルの次にテキストボックスがくるようにします 練習問題 メニュー項目はToolStripMenuItemオブジェクトであり ショートカットキーはこのオブジェクトのShortcutKeysプロパティに指定します 一方 アクセスキーは Text プロパティの中に アンパサンド (&) を付けて指定します アクセスキーを指定する Text プロパティは フォームデザイナー上で直接入力することもできます 2. Ifステートメントの条件文は 次のようになります モーダルフォームを表示するには ShowDialogメソッドを呼び出す必要があり その引数には所有者となるフォームを指定します また ここではForm2 上に配置された [ 実行 ] ボタンの DialogResultプロパティの値が OK なので このボタンが押されたかどうかは 戻り値がDialogResult.OKであるか否かで判断できます Dim frm As Form2 frm = New Form2() If frm.showdialog(me) = DialogResult.OK Then 3. フォームを開いた状態で [Enter] キーを押したとき フォーム上の [ 実行 ] ボタンをクリックした場合と同じ処理を行なうには フォームの AcceptButtonプロパティに [ 実行 ] ボタンの名前を指定します 4. モーダルフォームもモードレスフォームも 使用するフォームには違いがありません ただし モーダルフォームに貼り付けたボタンでは DialogResult プロパティを指定して 閉じた際の戻り値を返すことができます これはモードレスフォームでは利用できません また 表示方法が異なり モーダルフォームでは ShowDialog メソッドを使用しますが モードレスフォームでは Show メソッドを使用します この章の理解度チェック ( 第 5 章 ) 1. Form1に追加するコードは 次のとおりです ❶のUpdateUI メソッドでは [ 自動インデントを有効にする ] オプション (IndentCheckBox) がオンかオフかの状態に応じて 2つのラジオボタンを有効化または無効化する処理を行ないます フォームがロードされたときと [ 自動インデントを有効にする ] オプションの状態が変更されたときには 2つのラジオボタンの状態を更新する必要があるので ❷のLoadイベントハンドラーや ❸のCheckedChangedイベントハンドラーの内部から UpdateUI メソッドを呼び出しています Private Sub UpdateUI() ❶ If IndentCheckBox.Checked Then RadioButton1.Enabled = True RadioButton2.Enabled = True Else RadioButton1.Enabled = False RadioButton2.Enabled = False Private Sub Form1_Load(... ❷ UpdateUI() Private Sub IndentCheckBox_CheckedChanged(... ❸ UpdateUI() 11

12 解答プログラム Chap05 WinSol5-5.z Indent 2. [ 検索 ] メニューと [ 結果をクリア ] メニューの処理は 同名のボタンの処理と同じなので 最も簡単に実装する方法は イベントハンドラーを同じにすることです プロパティウィンドウのイベント一覧で それぞれのメニュー項目のClickイベントに対して 次の既存のイベントハンドラーを指定します SearchMenuItemのClickイベント (Button1_Click) ClearMenuItem のClickイベント (Button2_Click) ユーザーインターフェイスの有効化や無効化の切り替えは すでにUpdateUIメソッドに集約されています そのため このメソッドの中で [ 結果をクリア ] ボタン (Button2) と同じタイミングで [ 結果をクリア ] メニュー (ClearMenuItem) を変更すればよいので 次の ❶と❷の位置にコードを追加します Private Sub UpdateUI() If IsAlwaysCleared() Then Button2.Enabled = False ClearMenuItem.Enabled = False ❶ Else Button2.Enabled = True ClearMenuItem.Enabled = True ❷ 解答プログラム Chap05 Sample02-Ver 設問 3の図 Cのとおりに タイトルやボタンのテキストを表示するには 次のようにプロパティを設定します フォーム / コントロールプロパティ名設定する値 Form1 Text オリジナル電卓 Button1 Text 計算 (&C) Button2 Text クリア (&L) また 設問 3 の図 D のようにタブオーダーを設定するには フォームデザイナー上でフォーム全体を選択した後 [ 表示 ] メニューの [ タブオーダー ] をクリックして 図 D と同様のタブオーダーの設定画面に切り替えます そして 図 Dの順番で各コントロールをクリックします 設定が済んだら もう一度 [ 表示 ] メニューの [ タブオーダー ] をクリックして タブオーダーが設定可能な状態を解除します 解答プログラム Chap05 Sample01-Ver 実行時にフォームのサイズが変化しても 動的にコントロールのレイアウトを変化させるようにするには Anchor プロパティを設定します 設問 4の図 Eのように変化させるには 次のように設定します コントロールプロパティ名設定する値 TextBox1 Anchor Top, Left, Right ListBox1 Anchor Top, Bottom, Left, Right Label1 Anchor Bottom, Left Button1 Anchor Top, Right Button2 Anchor Top, Right 解答プログラム Chap05 Sample01-Ver [ 計算 ] ボタンや [ クリア ] ボタンをクリックした後 テキストボックスに移動するには リストBに示す解答コードの❶や❷ のように TextBox1.Focus() と記述して Focusメソッドを呼び出します ( 設問 5 の解答は 設問 6 の解答と共通のコードです ) 解答プログラム Chap05 Sample01-Ver テキストボックスで [Enter] キーを押した際に計算するようにするには リストBの❸のようにKeyPressイベントハンドラーを実装します また 計算処理はButton1_Clickイベントハンドラーと共通なので ❹のように実装します Button1_ Click イベントハンドラーも ❹を呼び出すように変更します 解答プログラム Chap05 Sample01-Ver.2.0 リストB 設問 5 と 6 の解答コード Private Sub Button1_Click(... ProcessCalculation() TextBox1.Focus() ❶ Private Sub Button2_Click(... ListBox1.Items.Clear() total = 0D SetResult("0") TextBox1.Focus() ❷ Private Sub TextBox1_KeyPress(... ❸ If e.keychar = vbcr Then ProcessCalculation() Private Sub ProcessCalculation() ❹ Dim num As Decimal Dim phrases() As String Try phrases = Split(TextBox1.Text) If phrases.length = 1 Then num = CDec(phrases(0)) Accumulate("+", num) 12

13 Else num = CDec(phrases(1)) Accumulate(phrases(0), num) Catch ex As InvalidCastException PrintData( " 正しく数値を入力してください " + ex.message) Return Catch ex As ArgumentException PrintData( " 演算子が正しくありません " + ex.message) Return Catch ex As DivideByZeroException PrintData( " ゼロでの割り算はできません " + ex.message) Return Catch ex As OverflowException total = Decimal.MaxValue Catch ex As Exception PrintData( " 予期せぬエラーです " + ex.message) Return End Try SetResult(FormatData(total)) PrintData(TextBox1.Text) TextBox1.Text = "" 2. WPF 対応のウィンドウを実装する2 種類のファイルのうちの 1つは XAML(eXtensible Application Markup Language) と呼ばれる専用のマークアップ言語で記述して 画面レイアウトなどを定義したものです もう1つは Visual Basicなどのソースコードを記述するためのもので 主に制御ロジックなどの記述で使用します 3. Visual Studio 上でWPF 対応のウィンドウを編集する3つの形態には XAMLをビジュアルに編集するデザインビュー XAML のマークアップを直接編集する XAML ビュー そして ソースコードを直接編集するコードエディターがあります このうち デザインビューと XAML ビューは 1 つの XAML ファイルを編集するものであり 1 つの WPF デザイナーを構成しています 練習問題 すべて XAMLで記述することができます 特に XAMLは静的な見栄えだけでなく インタラクティブな動的変化もデザインでき イベント ( トリガー ) による動的変化や 実行時の他のコントロールとの動的な連動も実装できます 2. いいえ 正しくありません スタイルやテンプレートは リソースとして別のファイルに実装でき 適用先のウィンドウ内に直接実装する必要はありません 3. WPF におけるアニメーションは 実質的には 時間の経過とともに 1 つのプロパティの値を変化させる定義のことです この章の理解度チェック ( 第 6 章 ) 第 6 章 練習問題 XAML は開発者もデザイン担当者も ユーザーインターフェイスのデザインを行なう際に共通して利用できます よって 大きく分けて以下の2つのメリットがあります デザイン担当者は 実際の実行環境で利用可能な機能を用いて実装するため 実現不可能なデザインを提案することがなくなる デザイン担当者は デザインを文書としてまとめるのではなく 直接 WPF アプリケーションの成果物として作成することができる その結果 デザイン担当者が作成したデザインの仕様書を元に開発者がプログラムコードを書き起こす必要がなくなり 開発効率が向上する また XAMLを用いれば 開発者とデザイン担当者のどちらからでも作業を開始することができるほか どちらも後から修正することができ 柔軟な作業分担を行なうことができる 1. 設問の図 Aに示された [Reset] ボタンと同様のスタイルにするためには WpfAppCalc プロジェクトから この部分に相当するボタンのスタイルをコピーし そのスタイルを適用する必要があります そのため MainWindow.xamlには 次の❶に示すリソースのブロックの中に ❷のボタンのスタイルのブロックを追加します ❷のブロックは WpfAppCalc プロジェクトのものと同じです また ❸のように [Reset] ボタン (<Button> 要素 ) にスタイルを適用する記述を追加します <Window x:class="mainwindow" <Window.Resources> ❶ <Style x:key="ourbutton" TargetType="{x:Type Button}"> ( 略 :WpfAppCalc と同じスタイル ) </Style> </Window.Resources> ❷ 13

14 <Button Content="Reset" Grid.Column="1" Height="23" HorizontalAlignment="Center" Margin="10,10,10,10" Name="Button1" VerticalAlignment="Top" Width="100" Style="{StaticResource OurButton}" ❸ /> 解答プログラム Chap06 WpfAppMap-2 2. 設問の図 Bに示された矢印を追加するには 地図の <Canvas> 要素の中に 次に示す <Image> 要素を追加します この要素のName 属性は "Arrow4" にします また Tag 属性を "D" とします 挿入箇所としては 地図の <Canvas> ブロックの中であれば任意ですが 既存の <Image> 要素のうちName 属性が "Arrow3" の矢印の直後あたりがよいでしょう <Image Name="Arrow4" Source="/WpfAppMap;component/Images/Arrow1.bmp" Canvas.Top="85" Canvas.Left="240" Tag="D"> <Image.RenderTransform> <RotateTransform Angle="0" CenterX="10" CenterY="26"/> </Image.RenderTransform> </Image> 解答プログラム Chap06 WpfAppMap-2 3. 設問の図 Cのように矢印をクリックした際に選択状態にするためには まずは 次のように選択状態の矢印の <Image> 要素を追加する必要があります 元の地図の2 番目の矢印の選択状態 (Name 属性が "Arrow2Selected") と同様なので これをコピーして 位置だけ調整するとよいでしょう この要素の挿入位置は Name 属性が "Arrow3Selected" の矢印の直下あたりが適当です <Image Name="Arrow4Selected" Source="/WpfAppMap;component/Images/Arrow2.bmp" Canvas.Top="85" Canvas.Left="240" Visibility="Hidden"> <Image.RenderTransform> <RotateTransform Angle="0" CenterX="10" CenterY="26"/> </Image.RenderTransform> </Image> また MainWindow.xaml.vb のソースコードでは 次のように修正します ❶の [Reset] ボタンのイベントハンドラーでは ❷に示すように 4つ目の矢印 (Arrow4Selected) の選択状態を解除するために 非表示 (Hidden) に設定しています さらに 矢印のいずれかをクリックした際に実行される❸のイベントハンドラーにも修正を加えます このイベントハンドラーは 4 つ目の矢印のクリックにも呼応させるため ❹のように Handles 句の最後に Arrow4.MouseLeftButtonDown を加えます この❸のイベントハンドラーの中では すでに回転のアニメーション (❺) とメッセージ表示のアニメーション (❽) が実装されています このとき ❻のように 矢印の Tag プロパティ (arrow.tag) の値に応じて Select...Case 文を使用して 表示メッセージや選択矢印を切り替えています ❼のCaseブロックが今回追加した矢印のための表示の切り替えです (Tag プロパティが "D" の場合 ) それ以外のすべての Case ブロックでは 今回追加した選択矢印 (Arrow4Selected) を非表示にする必要があるので それぞれの Case ブロックの末尾に この矢印を非表示 (Hidden) にする代入文を追記しています Private Sub Button1_Click(... ❶ compassanim1.to = 0.0R mapanim1.to = 0.0R rotatestoryboard1.begin() MessageCanvas1.Visibility = Arrow1Selected.Visibility = Arrow2Selected.Visibility = Arrow3Selected.Visibility = Arrow4Selected.Visibility = Private Sub Arrow1_MouseLeftButtonDown(...) _ ❸ Handles Arrow1.MouseLeftButtonDown, Arrow2.MouseLeftButtonDown, Arrow3.MouseLeftButtonDown, Arrow4.MouseLeftButtonDown ❹ ' 回転 compassanim1.to = requestangle mapanim1.to = requestangle rotatestoryboard1.begin() ' メッセージの決定と表示 ❷ ❺ 14

15 Select Case CStr(arrow.Tag) ❻ Case "A" Arrow4Selected.Visibility = Case "B" Arrow4Selected.Visibility = Case "C" Arrow4Selected.Visibility = Case "D" ❼ MessageCanvas1.Visibility = Windows.Visibility.Visible Message1.Text = " 入口を入ったのち " & " 左手に受け付けのデスク " & " がございます " NaviImage1.Source = navileft Arrow1Selected.Visibility = Arrow2Selected.Visibility = Arrow3Selected.Visibility = Arrow4Selected.Visibility = Windows.Visibility.Visible Case Else Arrow4Selected.Visibility = End Select showmessagestoryboard1.begin() ❽ りがよいでしょう <Button Content="UpsideDown" Grid.Column="1" Height="23" HorizontalAlignment="Center" Margin="10,60,10,10" Name="Button2" VerticalAlignment="Top" Width="100" Style="{StaticResource OurButton}" /> 解答プログラム Chap06 WpfAppMap-3 5. [UpsideDown] ボタンをクリックした際に 地図が上下逆になるようにするには このボタンの Clickイベントハンドラーを生成した後 次のコードを入力します ❶の If ブロックでは 現在の角度から アニメーションの終了後の角度 (requestedangle) を求め その角度を使用して ❷で回転アニメーションを実行します また ❸のように メッセージや4つの選択矢印は非表示にします Private Sub Button2_Click(... Dim requestangle As Double If CompassRotator.Angle = 180 Then ❶ requestangle = 0 Else requestangle = 180 ' compassanim1.to = requestangle mapanim1.to = requestangle rotatestoryboard1.begin() ' MessageCanvas1.Visibility = Arrow1Selected.Visibility = Arrow2Selected.Visibility = Arrow3Selected.Visibility = Arrow4Selected.Visibility = ❷ ❸ e.handled = True 解答プログラム Chap06 WpfAppMap-2 第 7 章 解答プログラム Chap06 WpfAppMap-3 4. 設問の図 Dのように [UpsideDown] ボタンを追加するには 次のように <Button> 要素を追加します 追加箇所は <Grid> 要素ブロック内の任意の位置でかまいませんが 既存の <Button> 要素 (Name 属性が "Button1" の [Reset] ボタン ) の直下あた 練習問題 bの 責任 です オブジェクトは 特定の責任を任されたソフトウェア部品です オブジェクト自身が独自に自動的に何か 15

16 をするわけではないので 自動 という選択肢は不適切です また 領域 という選択肢はデータ領域を暗示しますが 1つのオブジェクトは 状態 ( データ ) と 振る舞い から構成されるので 単に 領域 では不十分です 2. インスタンスメンバー変数は インスタンスごとに個別の情報を確保する必要があり インスタンスが 5 個あれば 同じく 5 個存在します 一方インスタンスメソッドは インスタンスごとに作用するので インスタンスごとに個別にメソッドがあると考えてよいですが 実際のメモリ上の実装ではそうする必要はなく あたかもインスタンスごとにあるかのごとく インスタンス単位で作用するだけです インスタンスが複数あっても 実際のインスタンスメソッドの数は1 個です 3. Visual Basicのモジュールに定義されたメンバーは 共有メンバーとして扱われます つまり メンバー変数は共有変数となり メソッドは共有メソッドになります これらには インスタンスを作成せずに アクセスできます 4. 次のようになります Dim customers() As Customer customers = New Customer(19){} For i As Integer = 0 To customers.length - 1 customers(i) = New Customer() Next 2 行目のように まずCustomer 型の配列要素を20 個確保します この時点では あくまで参照情報を格納する配列要素を確保しただけで インスタンスは作成されません 3 行目から 5 行目のように 個別にインスタンスを作成して 配列要素それぞれに 参照情報を設定する必要があります 練習問題 つ目の原因は Overloads 修飾子の使い方です オーバーロードでは オーバーロードの対象となる同一名のメソッドに対して すべてにOverloads 修飾子を付けるか すべてに付けないかのどちらかでないといけません そのため ここでは3つのメソッドすべてにOverloads 修飾子を付けるか もしくは既存の 2 つの Overloads 修飾子を削除する必要があります 2つ目の原因は オーバーロードでは引数のパターンを必ず変えなければならないという点です この例では 2 つ目と 3 つ目のメソッドの引数は どちらも1つでString 型です 戻り値は異なりますが 戻り値が異なるだけでは オーバーロードは成立しません 2. コンストラクターには Integer 型の引数が 1 つあるので 次のようになります Dim ob1 As New Cube(100) Dim ob1 As Cube = New Cube(100) 3. 1つ目の原因は ReadOnly 修飾子がない点です このDataプロパティには Getプロシージャしかないので読み取り専用です 読み取り専用プロパティには ReadOnly 修飾子が必要です 2 つ目の原因は Shared 修飾子の使い方です この Data プロパティには Shared が付いているので共有プロパティです 共有プロパティなどの共有メンバーは 共有メンバーにしかアクセスできません しかし Get プロシージャ内の Return ステートメントでは インスタンスメンバー変数である dt を参照しています このコンパイルエラーをなくすには Data プロパティの Shared 修飾子を削除してインスタンスプロパティに変更するか もしくは 逆に共有プロパティのままにして 変数 dtに Shared 修飾子を付けて共有変数にする必要があります 4. 次のようになります Default 修飾子を付けて Dataプロパティのインデックスには 引数を 1 つ定義する必要があります Default Public Property Data( ByVal ndx As Integer) As Integer Get ( 略 :Returnステートメントを記述する必要がある) End Get Set(ByVal value As Integer) End Set End Property 練習問題 プロジェクトをビルドすると それぞれ別々のアセンブリになります WinAppから異なるアセンブリであるMyLibsのクラスを参照するには そのクラスが Public でなければなりません そのため CubeクラスにはPublic 修飾子を付ける必要があります 2. 同一のプロジェクトでは Form2クラスのメンバー変数 TextBox1が参照できるにもかかわらず 異なるプロジェクトからは参照できない場合 TextBox1にFriend 修飾子が付いていると考えられます Friend 修飾子を付けると 同一プロジェクト内 ( 同一アセンブリ内 ) でないと参照できません 3. 要件を満たすには 次のようになります クラスの Public 修飾子はなくてもかまいません Namespace Util.Etc Public Class Cube End Cube End Namespace または または 16

17 Namespace Util Namespace Etc Public Class Cube End Cube End Namespace End Namespace 4..NET Framework のクラスライブラリは 共有アセンブリとして グローバルアセンブリキャッシュに配置されています グローバルアセンブリキャッシュの位置は Windows OS のフォルダーが C: Windows ならば C: Windows assembly です 5. DLL ファイルがプライベートアセンブリであれば EXE ファイルと同一フォルダーに配置すれば利用できます この章の理解度チェック ( 第 7 章 ) 2. フライト番号を返す読み取り専用プロパティが必要なので ❷ のように定義します Flight クラスのインスタンス作成時に コンストラクターの引数の渡し方に2つのパターンがあるので ❸と❺のように コンストラクターをオーバーロードして 2 つ用意します ただし 2つのコンストラクターの処理は類似しているので ❹のように Me.New(...) を使用して 一方のコンストラクターの処理を もう一方のコンストラクターで利用しています Flight インスタンスにインデックスを直接指定する方法は 数値と文字列の 2 種類があるので ❻や❼のように既定のインデックス付きプロパティをオーバーロードします また ❼ではインデックスの値が economy business first であるかに応じて 処理を振り分ける必要があり アルゴリズムを簡単にするため また保守性を高めるため ❶のように区分を配列として用意します ただし この配列は複数の Flight インスタンスに渡って同じものでかまわないので 共有変数にします 配列にせずに ❼のプロパティの中で 直接アルゴリズムとして実装しても正解です ( ただし 保守性は低下します ) 1. KansujiConverterクラスは 次のようになります このインスタンスに数値 (Integer 型 ) のインデックスを直接付けることができるようにするため Integer 型のインデックスを指定する 既定のインデックス付きプロパティを定義します ( プロパティ名は任意です ) また 変換を簡単にするため 漢字の配列を用意しましたが この配列の内容は固定で インスタンスごとに個別に持つ必要はないので 共有変数にしたほうが無駄がありません また Getプロシージャでは単に値を返すだけでなく インデックス number が有効な範囲 (0 から 9) にあるかチェックし その範囲にない場合は 例外としてArgument Exception を発生させています Public Class KansujiConverter Public Class Flight Private mynumber As Integer Private prices(2) As Integer Private Shared names() As String = {"economy", "business", "first"} Public ReadOnly Property Number( ) As Integer Get Return mynumber End Get End Property ❶ ❷ Shared table() As Char = { " 零 "c, " 一 "c, " 二 "c, " 三 "c, " 四 "c, " 五 "c, " 六 "c, " 七 "c, " 八 "c, " 九 "c } Default Public ReadOnly Property Kanji( ByVal number As Integer) As Char Get If number < 0 OrElse number >= table.length Then Throw New ArgumentException() Return table(number) End Get End Property 解答プログラム Chap07 TestConverter のソリューションに含まれる KansujiConverter.vb Public Sub New(ByVal num As Integer) ❸ Me.New(num, , , ) ❹ Public Sub New(ByVal num As Integer, ByVal eco As Integer, ByVal bus As Integer, ByVal fir As Integer) mynumber = num prices(0) = eco prices(1) = bus prices(2) = fir Default Public ReadOnly Property Item( ByVal ndx As Integer) As Integer Get If ndx < 0 OrElse ndx >= prices.length Then ❺ ❻ 17

18 Throw New ArgumentException() Return prices(ndx) End Get End Property Default Public ReadOnly Property Item( ByVal name As String) As Integer Get For ndx As Integer = 0 To names.length - 1 If names(ndx) = name Then Return prices(ndx) Next Throw New ArgumentException() End Get End Property 解答プログラム Chap07 TestConverter のソリューションに含まれる Flight.vb 3. Productクラスの3つの読み取り専用プロパティとコンストラクターは次のようになります ただし プロパティの実際の値を保持するためのメンバー変数も 3 つ定義する必要があります Public Class Product Private myid As Integer Private myname As String ' 製品 ID ' 製品名 Private myprice As Decimal ' 価格 ' プロパティ Public ReadOnly Property ID() As Integer Get Return myid End Get End Property Public ReadOnly Property Name() As String Get Return myname End Get End Property ❼ Public ReadOnly Property Price() As Decimal Get Return myprice End Get End Property ' コンストラクター Public Sub New(ByVal i As Integer, ByVal nam As String, ByVal pr As Decimal) myid = i myname = nam myprice = pr 解答プログラム Chap07 Sample02-Ver のソリューションに含まれる Product.vb 4. ProductListクラスは次のようになります InitDataメソッドの内部では 配列 products の各要素のインスタンスを作成する際に たとえば New Product(101, "apple", 200D) のように作成し 設問 3 で定義したコンストラクターに 3 つの引数を渡している点に注意してください また この ProductList オブジェクトを あたかも配列のように使用するには このクラスの最後のメンバーとして記述したItemsプロパティのように 既定のインデックス付きプロパティを定義する必要があります Public Class ProductList Dim products() As Product ' 製品情報用の配列 Public Sub InitData() ' 製品情報の初期化 products = New Product(9) {} products(0) = New Product(101, "apple", 200D) products(1) = New Product(102, "apple juice", 250D) products(2) = New Product(140, "apple pie", 450D) products(3) = New Product(201, "banana", 100D) products(4) = New Product(270, "banana parfait", 550D) products(5) = New Product(301, "orange", 200D) products(6) = New Product(302, "orange juice", 250D) products(7) = New Product(501, "peach", 250D) products(8) = New Product(502, "peach juice", 350D) products(9) = New Product(701, "pineapple", 1100D) ' 製品検索 - Form1 クラスから ProductList に移行 Pu blic Function Query( 18

19 ByVal filter As String, ByRef count As Integer) As Product() Dim index As Integer Dim result() As Product ' 引数の検証 If count <= 0 OrElse count > 256 Then Throw New ArgumentException() index = 0 result = New Product(count - 1) {} Fo r i As Integer = 0 _ To products.length - 1 If products(i).name Like filter Then result(index) = products(i) index += 1 If index >= count Then Exit For Next i count = index Return result End Function ' 商品リスト全体の件数を返す Public ReadOnly Property Count() As Integer Get Return products.length End Get End Property ' 擬似的な配列の表現 Default Public ReadOnly Property Items( ByVal ndx As Integer) As Product Get If ndx < 0 OrElse ndx >= products.length Then Th row New _ IndexOutOfRangeException( " 商品リストのインデックスが " + " 無効です ") Return products(ndx) End Get End Property 解答プログラム Chap07 Sample02-Ver のソリューションに含まれる ProductList.vb 5. フォームクラス (Form1.vb) は ProductListクラスのオブジェクトを用いて 検索処理を実行するようになるので 次のコー ドの太字部分のように書き換えます なお Form1クラスブロックの内部に定義されていたInitDataメソッドとQueryメソッドは削除します これまでフォームクラス内部の InitData メソッドやQueryメソッドを呼び出していた部分は 今後は ProductListオブジェクトの同名メソッドを呼び出すため それぞれ products.initdata() products.query(phrase(0), number) に変更します この修正によって フォームクラス内部には 製品検索を直接行なう実装コードはなくなりました Public Class Form1 Private products As New ProductList() Private Sub Form1_Load(... products.initdata() Fo r i As Integer = 0 _ To products.count - 1 PrintData( String.Format( "{0:000}", products(i).id), products(i).name, St ring.format( "{0:#,##0}", products(i).price) ) Next UpdateUI() Private Sub Button1_Click(...) _ Handles Button1.Click, SearchMenuItem.Click Dim str As String = GetData() Dim phrase() As String Dim number As Integer Dim list() As Product ' 入力項目の分解 str = Trim(str) phrase = Split(str, " ") If phrase.length >= 2 Then Else number = products.count ' 検索 Try list = products.query( phrase(0), number) Catch ex As ArgumentException UpdateUI() 19

20 解答プログラム Chap07 Sample02-Ver のソリューションに含まれる Form1.vb 6. 販売管理プログラムVer.2.5.2では ProductLibsプロジェクトを新たにソリューションに追加し ProductListクラスと Productクラスをそのプロジェクトに移動するので ソリューションの構成は図 A.2 のようになります 図 A.4 ProductLibs プロジェクトへの参照の追加 そして ProductLibsプロジェクトのProductListクラスと Product クラスは 次のように Data 名前空間ブロックで囲みます Namespace Data Public Class ProductList 図 A.2 ソリューションの構成 ProdcutLibsプロジェクトのルート名前空間は OurCorpと指定する必要があるので ProductLibsプロジェクトのプロジェクトデザイナーでは アプリケーション タブの ルート名前空間 欄に OurCorp と指定する必要があります( 図 A.3) End Namespace Namespace Data Public Class Product End Namespace また WinAppSaleプロジェクトのForm1.vbでは Product ListクラスとProductクラスが参照できるように ファイルの先頭に次の 1 文を追加します Imports OurCorp.Data 解答プログラム Chap07 Sample02-Ver 第 8 章 図 A.3 ルート名前空間の指定また WinAppSaleプロジェクトにおいて Productクラス等を使用するので ProductLibsへの参照の追加が必要です 参照の追加の操作手順は 7.3 節の ライブラリの参照追加 (354 ページ ) を参照してください 参照の追加を正しく行なうと WinAppSale プロジェクトデザイナーの 参照 タブには 図 A.4 のように ProductLibsがリストアップされます 練習問題 Shapeクラスから継承して Fメソッドをオーバーライドすると 派生クラスである Circle クラスは次のようになります Public Class Circle Inherits Shape Public Overrides Sub F() 20

21 2. 派生クラスでオーバーライドした場合 基本クラスの同名のメソッドを呼び出すには MyBaseキーワードを使用し 次のように記述します MyBase.Proc1() 3. 派生クラスのコンストラクターから 基本クラスのコンストラクターを呼び出すには MyBaseキーワードを使用して次のように記述します ただし この記述は派生クラスのコンストラクター内部の最初のステートメントでなければなりません この設問では 基本クラスの引数なしのコンストラクターを呼び出すので.New() というように () の中には何も記述しません なお 既定では引数なしのコンストラクターを呼び出すので 結局のところ MyBase.New() の部分は省略してもかまいません Public Sub New(ByVal number As Integer) MyBase.New() 4. Proc2がオーバーライドされたのか 隠ぺいされたのかによって このコードの呼び出し先は変わってきます もし 派生クラスである Cube で Proc2 メソッドをオーバーライドしたのならば ob.proc2() の呼び出しはインスタンスによって決まるので 変数 obが表わすcubeインスタンスのオーバーライドしたメソッド (CubeクラスのProc2メソッド) が呼び出されます もし Proc2メソッドを隠ぺいしたのならば ob.proc2() の呼び出しは変数 obの型で決まるので この変数の型である Root クラスの Proc2 メソッドが呼び出されます Dim ob As Root ob = New Cube() ob.proc2() 5. 派生クラスからはアクセスできるようにしたいので Protected 修飾子を使用して 次のように記述します Protected number As Integer または Protected Dim number As Integer い を実現できます 2. 抽象クラスにするには 次のように記述します クラスの修飾子としてMustInheritを付け 抽象メソッドには修飾子として MustOverrideを付けます また メソッド自体は実装を伴わず 文法上 Sub のブロック構造にはできないので は記述できません Public MustInherit Class MyComponent Public MustOverride Sub Proc1() 3. Writer オブジェクトを引数として受け取り その Output メソッドの実装によって出力先を切り替えるには まず Writer クラスを基本クラスにして Output メソッドはオーバーライド可能なメソッドとして定義する必要があります その上で たとえば Writer クラスから継承した派生クラスを 3 つ用意して 各派生クラスの Output メソッドをオーバーライドし それぞれ ファイルの出力 プリンターの出力 ネットワークの送信などの具体的な実装を記述します なお 基本クラスのインスタンスを直接作成する必要がなく 基本クラスのOutputメソッド自体に特に実装を持つ必要がなければ Writerクラスは抽象クラスにして Outputメソッドは抽象メソッドにします 4. IProcess インターフェイスを Comp クラスに実装すると 次のようになります 先頭のクラス宣言のステートメントの次には Implements ステートメントを記述します また 具体的にオーバーライドされるメソッドには Implements 句を付けます Public Class Comp Implements IProcess Public Sub Run(ByVal num As Integer) _ Implements IProcess.Run 5. 引数の型が IPersistインターフェイスであるならば IPersistインターフェイスを実装した任意のクラスのインスタンスを渡すことができます このインターフェイスさえ実装すればよく そのインスタンスのクラス名や基本クラスが何であるかは無関係です 練習問題 クラス継承を用いて多態性を実現する場合 同一のメッセージを送る ためのメソッドを基本クラスに用意します このメソッドを共通のメソッドにして 複数の派生クラスを作ることができます そして 各派生クラスでは このメソッドをオーバーライドして独自の実装を記述することによって 固有の振る舞 練習問題 いいえ イベントを送信するクラスをコーディングする上で 受信側のクラス名やメソッド名は必要ありません 送信側では イベント名を定義して 必要に応じてイベントを発生させ イベントハンドラーに必要な引数を渡すだけです 21

22 2. イベントハンドラーでは Eventステートメントに定義した引数の形式と 同じ形式の引数を受け取らなければなりません ここでは 順に 1つのInteger 型の引数と 1つのString 型の引数を受け取る必要があります 3. 次のようになります UpdatedイベントはMyHandler 型として定義されています そのため String 型の引数を渡せるようにするには Delegateステートメントを使用して String 型の引数が受け取れるように MyHandler 型を定義する必要があります ( 引数の名前は任意です ) Public Delegate Sub MyHandler( ByVal msg As String) Public Class Sender Public Event Updated As MyHandler 4. イベントハンドラーはHandles 句を使用して 次のように記述します ただし このイベントでは String 型の引数を1つ受け取るので イベントハンドラーも引数の形式を合わせる必要があります Private Sub OnUpdated(ByVal msg As String) _ Handles mysender.updated 5. AddHandlerステートメントを使用した場合は 次のようになります Me. は省略可能です AddHandler mysender.updated, AddressOf Me.OnUpdated この章の理解度チェック ( 第 8 章 ) 1. 派生クラスCubeは 次のようになります このコンストラクターの引数のデータを 基本クラス Root のメンバー変数 text に設定する必要があり 基本クラスのコンストラクターの引数にそのデータを渡せば設定できます Public Class Cube Inherits Root Public Sub New(ByVal str As String) MyBase.New(str) 2. Sender クラスは次のようになります Opened イベントを定義するには Eventステートメントを使用します イベントを送信するには RaiseEventステートメントを使用します Public Class Sender Public Event Opened As OurHandler Public Sub TestFire() RaiseEvent Opened("Opened") 3. sender1オブジェクトのopenedイベントハンドラーは 次のようになります メンバー変数 sender1にはwithevents 修飾子が付いているので イベントハンドラーにはHandles 句を使用することができます なお Opened イベントは Delegate ステートメントの定義にあるOurHandler 型なので String 型の引数が1つ必要です イベントハンドラーの引数もこれに合わせる必要があります ( イベントハンドラーのアクセス修飾子は ここでは問いません ) Public Class Receiver Private WithEvents sender1 As New Sender() Private Sub Sender1_Opened( ByVal msg As String) _ Handles sender1. Opened 4. MyEnumeratorクラスは 次の❶のようになります Product Listクラス内でのみ クラス名を使用してインスタンスを作るので MyEnumeratorクラスはProductListクラス内に入れ子で定義した上で プライベートクラスにします また 修正後のGetEnumeratorメソッド内では MyEnumeratorのコンストラクター引数として Product 配列を受け取るので それに対応できるようコンストラクターを定義します この受け取った配列 ( の参照 ) は Currentプロパティで配列要素を返す際に必要になるので ここではメンバー変数 listとして退避します また 現在の要素の位置を記憶するため メンバー変数 currentindexを用意します 初期状態では 要素の先頭より前に飛び出しているので 初期値は 1 にします Public Class ProductList Implements IEnumerable Public Function GetEnumerator() _ As IEnumerator _ Implements IEnumerable.GetEnumerator Return New MyEnumerator(products) End Function Private Class MyEnumerator ❶ 22

23 Implements IEnumerator Private list() As Product Private currentindex As Integer = -1 Public Class Accumulator Protected mytotal As Decimal Pu blic Sub New( ByVal prods As Product()) list = prods Public ReadOnly Property Current() _ As Object _ Implements IEnumerator.Current Get Return list(currentindex) End Get End Property Public Function MoveNext() As Boolean _ Implements IEnumerator.MoveNext currentindex += 1 If currentindex >= list.length Then Return False Else Return True End Function Public Sub Reset() _ Implements IEnumerator.Reset currentindex = -1 " Public Sub New() Reset() Public Sub Accumulate(ByVal op As String, ByVal num As Decimal) Try Select Case op Case "*" mytotal *= num Case "/" mytotal /= num Case "-" mytotal -= num Case "+" mytotal += num Case Else Th row New _ ArgumentException() End Select Catch ex As OverflowException ❶ mytotal = Decimal.MaxValue Throw End Try Public Sub Reset() mytotal = 0D 解答プログラム Chap08 Sample02-Ver Accumulatorクラスは次のようになります Accumulatorクラスのメンバーのうち コンストラクター Accumulateメソッド FormatDataメソッド およびResetメソッドは 外部からアクセス可能になるよう Public 修飾子を付けます ( ここでは 同じアセンブリ内のForm1クラスからアクセスしているので Friend 修飾子でも可能です ) また Accumulateメソッド内では OverflowExceptionを捕捉して 変数 mytotalに最大値を設定する必要があるので ❶のCatchブロックを用意しています このCatchブロック内部では 最大値に設定するほか あらためて Throw ステートメントを実行し 同じ例外を呼び出し元に伝えています ( スローしています ) ❷のFormatDataメソッドでは オーバーライド可能にするためOverridable 修飾子を付け メンバー変数 mytotal に対して整形するので 引数を受け取る必要はなくなります Pu blic Overridable Function FormatData()_ ❷ As String Dim result As String If mytotal >= D AndAlso mytotal <= D Then result = CStr(myTotal) Else result = "Error" Return result End Function また Form1 クラスは次の太字部分のように修正します ❸ で は 合計を表わすメンバー変数 total の代わりに 合計計算の責任を持つAccumulatorインスタンスの変数に置き換えます Load イベントハンドラーの中では ❹のようにインスタンスを 23

24 作成し この時点では合計値が初期値のゼロの状態なので その次行ではFormatDataメソッドを呼び出して 初期値の状態の文字列を取得し これを引数としてSetResultメソッドを呼び出し ラベルに初期値を表示しています ❺も同様の初期化ですが ここでは明示的に Reset メソッドを呼び出しています ❻や❼では Accumulatorインスタンスの Accumulateメソッドを呼び出すように変更します ❽はもう不要なので アポストロフィーを付けてコメントアウトします その他 ❾やも Accumulatorインスタンスの FormatDataメソッドを呼び出すように変更します Public Class Form1 Dim accum As Accumulator ❸ Private Sub Form1_Load(... accum = New Accumulator() SetResult(accum.FormatData()) ❹ Return Catch ex As DivideByZeroException PrintData( " ゼロでの割り算はできません " + ex.message) Return" Catch ex As OverflowException 'total = Decimal.MaxValue ❽ Catch ex As Exception PrintData( " 予期せぬエラーです " + ex.message) Return End Try SetResult(accum.FormatData()) ❾ PrintData(TextBox1.Text) TextBox1.Text = "" Private Sub Button2_Click(... ListBox1.Items.Clear() accum.reset() SetResult(accum.FormatData()) TextBox1.Focus() Private Sub ProcessCalculation() Dim num As Decimal Dim phrases() As String Try phrases = Split(TextBox1.Text) If phrases.length = 1 Then num = CDec(phrases(0)) accum.accumulate("+", num) ❻ Else num = CDec(phrases(1)) ac cum.accumulate( phrases(0), num) ❼ Catch ex As InvalidCastException PrintData( " 正しく数値を入力してください " + ex.message) Return Catch ex As ArgumentException PrintData( " 演算子が正しくありません " + ex.message) ❺ ' 必要なデータの出力 Pr ivate Sub PrintLog( ByVal writer As TextWriter) writer.writeline("-- 明細 --") For Each dt As String In ListBox1.Items writer.writeline(dt) Next writer.writeline() writer.writeline("-- 合計 --") writer.writeline(accum.formatdata()) writer.writeline("==========") 解答プログラム Chap08 Sample01-Ver Accumulatorクラスから継承したAccumulatorExクラスは次のようになります 記述する必要があるメソッドは オーバーライドした FormatData メソッドだけです Public Class AccumulatorEx Inherits Accumulator Pu blic Overrides Function FormatData() _ As String Dim result As String If mytotal >= D AndAlso mytotal <= D Then re sult = String.Format( "{0,10:#, ##0}", mytotal) Else result = "Error" 24

25 Return result End Function なお 次のように基本クラス (MyBase) のFormatDataメソッドを呼び出して 必要な変更部分だけ 差分だけ実装するのでもかまいません Public Class AccumulatorEx Inherits Accumulator Pu blic Overrides Function FormatData() _ As String Dim result As String result = MyBase.FormatData() If result <> "Error" Then re sult = String.Format( "{0,10:#, ##0}", mytotal) Return result End Function また Form1 クラスの書き換えは Form1_Load イベントハンドラー内のインスタンスを作成する部分をAccumulatorExインスタンスの作成に変更するだけです メンバー変数 accum は Accumulator 型のままでかまいません オーバーライドが成立するので FormatDataメソッドを呼び出すと 派生クラスの固有実装のFormatDataメソッドが呼び出され カンマ区切りの合計値を取得できます Private Sub Form1_Load(...) Handles MyBase.Load accum = New AccumulatorEx() SetResult(accum.FormatData()) 解答プログラム Chap08 Sample01-Ver.2.7 第 9 章 練習問題 テーブル形式の検索結果を取得する場合 SqlConnection SqlCommand SqlDataReaderの3つが必要です それぞれ順番に 接続の操作 ステートメントの実行 クエリ結果の操作を担当します 2. SQL Server の管理下に置くために アタッチが必要です 3. 次のようになります 接続文字列は Myキーワードを使用し て参照できます cn.connectionstring = My.Settings.MyConStr cn.open() 4. SQL ステートメントを実行した際に スカラー値としてレコード件数を取得する必要があるので ExecuteScalarメソッドを使用します 5. ProductName 列を参照するには 次のように記述します While rd.read() list.add(rd("productname")) End While 練習問題 テキストボックスに入力した文字列を SELECT ステートメントの文字列に連結する場合 テキストボックスに入力する内容によっては 不正なステートメントが SQL ステートメントに埋め込まれてしまうセキュリティ上の問題 (SQL インジェクション ) があります 2. SQL ステートメントに後からデータを埋め込むとき パラメーターを使用することで そのステートメントの特定の構文要素として 明示的に埋め込むことができます よって SQL インジェクションなどの不正なステートメントの埋め込みの防止につながります また パラメーター付きのステートメントを用意して 複数回ステートメントを実行する場合 2 回目以降のステートメント解析の負荷が減少する可能性があり パフォーマンスが向上する場合があります 3. ストアドプロシージャGetNumberのパラメーターに関する SqlCommandオブジェクトのParametersコレクションの構成は 次のようなコードが考えられます SqlDbType.Int) SqlDbType.Int) = ParameterDirection.Output 4. 明示的に開始したトランザクションの配下で SqlCommandオブジェクト ( 変数 cmd) のステートメントを実行できるようにするには このオブジェクトのTransactionプロパティに 開始したトランザクション (SqlTransactionオブジェクト) を指定する必要があります 次のようになります ctx = cn.begintransaction() cmd.connection = cn cmd.commandtype = CommandType.Text cmd.commandtext = "INSERT INTO cmd.transaction = ctx 25

26 練習問題 非接続型データアクセスは 同一のデータベースの特定のテーブルなどの限られた部分を頻繁に参照するような場合に向いています 非接続型のデータアクセス手法を使用して そのようなデータをプログラム内にキャッシュすれば データベースへのアクセス回数の減少につながり サーバーの負荷を軽減することができます ただし 同一のデータを複数のユーザーが頻繁に書き換えるような状況では サーバー上のデータとキャッシュデータとの不整合が頻繁に起こるので あまり向いていません 2. データセットに含まれる表形式のオブジェクトのクラス名は DataTable です また その表の各行に相当するオブジェクトのクラス名は DataRowです 3. データセットを表わす変数 ds を使用して titles テーブルの 2 行目の price 列を参照するコードは 次のとおりです ds.tables("titles")(1)("price") または cmd.commandtext = "SELECT ProductID, Price, Amount " & "FROM [Order Details] " & "WHERE OrderID cmd.commandtype = CommandType.Text cmd.parameters.add( SqlDbType.Int) = TextBox1.Text rd = cmd.executereader() While rd.read() ListBox1.Items.Add(String.Format( "{0} {1:#,##0} {2}", rd("productid"), rd("price"), rd("amount"))) End While rd.close() cn.close() ds.tables.item("titles").rows.item(1).item("price") 4. データセットデザイナー上に Membersというタイトルのデータテーブルがあれば 型指定されたデータセットには Membersプロパティが追加されます これはDataTableを表わします また その DataTableのための MembersDataTable クラスや その行のためのMembersRowクラスが生成されます 解答プログラム Chap09 TestDBApp4 2. データベースサーバー上のデータベース名の一覧を表示するアプリケーションのフォーム部分のコードは 次のようになります Imports System.Data.SqlClient この章の理解度チェック ( 第 9 章 ) Public Class Form1 1. 入力した注文番号に基づいて 該当する注文明細を検索するアプリケーションのコードは 次のようになります ❶では プロジェクトデザイナーの 設定 タブのアプリケーション設定で指定した接続文字列 MyConStrを参照しています Imports System.Data.SqlClient Public Class Form1 Private Sub Button1_Click(... Dim cn As New SqlConnection() Dim cmd As New SqlCommand() Dim rd As SqlDataReader cn.connectionstring = My.Settings.MyConStr cn.open() cmd.connection = cn ❶ Private Sub Button1_Click(... Dim cn As New SqlConnection() Dim cmd As New SqlCommand() Dim rd As SqlDataReader cn.connectionstring = "Data Source=. SQLEXPRESS;" & "Initial Catalog=master;" & "Integrated Security=True" cn.open() cmd.connection = cn cmd.commandtext = "sp_helpdb" cmd.commandtype = CommandType.StoredProcedure rd = cmd.executereader() While rd.read() ListBox1.Items.Add(rd("name")) End While rd.close() 26

27 cn.close() は 491ページの 型指定されたデータセットの追加 を参照してください 解答プログラム Chap09 TestDBApp5 3. 非接続型データアクセスを用いて 入力した会員番号に基づいて 注文を検索するアプリケーションを作る場合 ソースコードは次のようになります Imports System.Data.SqlClient Public Class Form1 Private Sub Button1_Click(... Dim adapter As New SqlDataAdapter( "SELECT OrderID, OrderDate, " & "MemberID " & "FROM Orders WHERE MemberID My.Settings.MyConStr) Dim ds As New DataSet() adapter.selectcommand.parameters.add( SqlDbType.Char, 6).Value = TextBox1.Text adapter.fill(ds, "Orders") For Each row As DataRow In ds.tables("orders").rows ListBox1.Items.Add(String.Format( "{0} {1:yy/MM/dd} {2}", row("orderid"), row("orderdate"), row("memberid"))) Next 解答プログラム Chap09 TestDBApp6 4. ProductLibsプロジェクトにおいて プロジェクトデザイナーの 設定 タブから アプリケーション設定で接続文字列を設定します この文字列は 次の設問のデータソース構成ウィザードで使用します 解答プログラム Chap09 Sample02-Ver 販売管理プログラムWinAppSale Ver.3.0で変更する点は TableAdapterの名前空間をインポートするほか ProductList クラスの InitDataメソッドを書き換えるだけです ProductList クラスの変更部分を次に示します Imports OurCorp.SalesDBDataSetTableAdapters Namespace Data Public Class ProductList Implements IEnumerable Private products() As Product Public Sub InitData() Dim ds As New SalesDBDataSet() Dim adapter As _ New ProductsTableAdapter() Try adapter.fill(ds.products) products = New Product( ds.products.count - 1) {} For ndx As Integer = 0 To products.length - 1 products(ndx) = New Product( ds.products(ndx). _ ProductID, ds.products(ndx). _ ProductName, ds.products(ndx).price) Next ndx Catch ex As Exception Throw New ApplicationException( "Product.InitData データ " & " の読み込みに " & " 失敗しました ", ex) End Try 5. ソリューションエクスプローラーのツリー上で ProductLibs プロジェクトのノードを選択した状態にして [ データ ] メニューの [ 新しいデータソースの追加 ] を選択し 起動するデータソース構成ウィザードを介して作成します このデータセットは ProductLibsプロジェクトの中に作成されます 具体的な手順 解答プログラム Chap09 Sample02-Ver

28 7. 新しい ProductListEx クラスは 次のようになります Public Class ProductListEx Implements IEnumerable ' 製品データをキャッシュするためのデータセット Dim ds As New SalesDBDataSet() Public Sub InitData() Di m adapter As _ New ProductsTableAdapter() Try adapter.fill(ds.products) Catch ex As Exception Th row New ApplicationException( "Product.InitData データの " & " 読み込みに " & " 失敗しました ", ex) End Try ' フィルタ条件に基づく Pu blic Function Query( ByVal filter As String ) As SalesDBDataSet.ProductsRow() ds.products.casesensitive = True Re turn ds.products.select( "ProductName Like '" + filter + "'") End Function ' 商品リスト全体の件数を返す Public ReadOnly Property Count() As Integer Get Return ds.products.rows.count End Get End Property ' 擬似的な配列の表現 Default Public ReadOnly Property Items( ByVal ndx As Integer ) As SalesDBDataSet.ProductsRow Get If ndx < 0 OrElse _ ndx >= ds.products.count Then Throw New _ IndexOutOfRangeException( " 商品リストのインデックスが無効です ") Return ds.products(ndx) End Get End Property ' For Eachステートメントへの対応 Public Function GetEnumerator() _ As IEnumerator _ Implements IEnumerable.GetEnumerator Return ds.products.rows.getenumerator() End Function 解答プログラム Chap09 Sample02-Ver.3.1 のソリューションに含まれる ProductLibs プロジェクト また 上記の変更に伴い Form1.vb も次のように修正します ❶ の部分が最も大きな違いであり ProductListから ProductListExに変更しています それ以降は これに依存する修正です ❷と❸と❹では 扱う製品の1 件分のデータは Product クラスから ProductsRow クラスに変更されています Imports OurCorp.Data Imports OurCorp Public Class Form1 Private products As New ProductListEx() ❶ Private Sub Form1_Load(... products.initdata() For Each prod As _ SalesDBDataSet.ProductsRow ❷ In products PrintData(String.Format("{0:000}", prod.productid), prod.productname, String.Format( "{0:#,##0}", prod.price) ) Next UpdateUI() Private Sub Button1_Click(...) _ Handles Button1.Click, SearchMenuItem.Click Dim str As String = GetData() Dim phrase() As String Dim number As Integer Dim list() As _ SalesDBDataSet.ProductsRow ❸ 28

29 ' Try list = products.query(phrase(0)) Catch ex As ArgumentException MsgBox( " 二つ目の項目の数字が " & " 有効範囲にありません...") Exit Sub End Try For Each prod As _ SalesDBDataSet.ProductsRow ❹ In list If prod Is Nothing Then Exit For PrintData(String.Format("{0:000}", prod.productid), prod.productname, String.Format( "{0:#,##0}", prod.price) ) Next UpdateUI() 解答プログラム Chap09 Sample02-Ver.3.1 内の型指定されたデータセットが表示されるので これをフォームデザイナー上へドラッグ & ドロップし コンポーネントトレイに貼り付けます 3. データソース構成ウィザードで 初期画面のデータ取得元の選択肢にある データベース を選択すると 型指定されたデータセットをプロジェクトに追加できます また そのプロジェクトのデータソースウィンドウには 型指定されたデータセットのツリー構造が表示されます 一方 データ取得元の選択肢として オブジェクト を選択すると 他のプロジェクトにある型指定されたデータセットを 自己のプロジェクトのデータソースウィンドウに追加することができます なお いずれの方法でデータソースウィンドウに型指定されたデータセットを追加した場合でも そのデータセットの各テーブルをフォームデザイナー上にドラッグ & ドロップすることで データバインディングが構成されたユーザーインターフェイスを簡単に作成することができます 練習問題 コレクションの要素を Object 型にすると そのコレクションはあらゆるデータ型が扱えるようになり 汎用性のあるコレクションを定義できるからです ただし 1つのコレクションにどんなデータ型も含めることが可能なため 意図しないデータ型のデータをコレクションに追加しても コンパイラがエラーを検出できないという問題点があります 2. Stack(Of T) のパラメーターに Integer 型をあてはめる場合 変数 st の定義は次のようになります 第 10 章 Dim st As Stack(Of Integer) 練習問題 リストボックス (ListBox1) が 型指定されたデータセット (ds) のProductsテーブルのProductName 列とバインドするためのコードは 次のとおりです 列の値はリストに表示するので DisplayMemberプロパティに指定します ListBox1.DataSource = ds ListBox1.DisplayMember = "Products.ProductName" または 以下のように指定することもできます ListBox1.DataSource = ds.products ListBox1.DisplayMember = "ProductName" 2. プロパティウィンドウを介して 型指定されたデータセットとのデータバインディングを設定するには このデータセットをデザイナーに認識させる必要があります 型指定されたデータセットを作成すると ツールボックスの上にそのプロジェクト 3. IEnumerable(Of Product) インターフェイスが実装されたオブジェクトは IEnumerator(Of Product) 型の列挙子を返します この列挙子の各要素の型は Product 型です 練習問題 次のような LINQ のメリットが 3 つ以上答えられれば正解です 複数のデータソースに対して同じアクセス方法が利用できるため データソースが異なるごとにアクセス方法を覚え直す必要がなく 学習負荷を軽減できる 簡単に 1 つのクエリ式で 異なるデータソースを連結できる プログラム上の文字列として表現されるSQLステートメントとは異なり コンパイラがLINQのクエリ式の有効性をチェックできるので プログラムの信頼性も向上する 従来の一般のプログラミング言語では簡単に表現できなかった 集合データの合計や平均値の算出といった集計処理も 1 つのステートメントで簡潔に表現できる 29

30 など 2. クエリ式は 次のようになります 配列もIEnumerable(Of T) インターフェイスを持つので Inの後ろに記述できます Dim query = From cust In customers Where cust.point >= 2000 Select cust.firstname, cust.lastname 3. クエリ式は 次のようになります Dim query = From m in members Join o in db.orders On m.memberid Equals o.memberid Select o.orderid, o.orderdate, o.memberid, m.membername ただし データソースの順番を次のように逆にはできません Dim query = From o in db.orders _ ' 不可!!! Join m in members _ ' 不可!!! On m.memberid Equals o.memberid _ Select o.orderid, o.orderdate, _ o.memberid, m.membername このように DataContextオブジェクトであるdbを最初にすると コンパイラは このオブジェクトのJoin メソッドを呼び出すコードを生成し LINQ to SQLプロバイダーのJoinメソッドが利用されます しかし LINQ to SQLプロバイダーでは メモリオブジェクトとSQL Serverのテーブルとの結合をサポートしていないので 実行エラーになります 4. OrdersテーブルのOrderDateをキーにして 同じ値のものが 1つにグループ化され グループごとに集計行が1つできます その集計行 1つ分のオブジェクトには OrderDateプロパティとCountプロパティのほか そのグループ1つ分の子レコードの集合をまとめたGroupという名前のプロパティも含みます ここでは Into キーワードの後ろでは 名前 = Count() と指定していないため 集計関数の名前 Count がそのまま列名になります また 名前 = Group と指定していないため 子レコードの集合の名前は Groupになります 練習問題 次のようなEntity Frameworkを利用するメリットが3つ以上答えられれば正解です Entity Frameworkでは概念モデルを採用しているので リレーショナルデータベースに限らず さまざまなデータを対象として扱うことができる リレーショナルデータに限らないことから 階層構造のデータや継承など 豊富なデータ構造を提供しており これらのモデルとプログラムのオブジェクトをマップするため 表形式にとらわれず さまざまなデータをプログラムで扱うことができる プログラム上のオブジェクトと直接マップしているのは概念モデルのエンティティであるため 後からデータベースの構造が変更されても 概念モデル自体を変更せずに データベースのスキーマと概念モデルとのマッピングを調整することで プログラムコードを変更しなくて済む Entity FrameworkのObjectContextは LINQ to Entities を介して 簡潔なデータアクセスができるなど 2. Order_Detailsプロパティは 概念モデルのOrder_Detailエンティティのインスタンスの集合であるエンティティセットにマップされています そして このエンティティセットは データベースのOrder Detailsテーブルにマップされています 3. ObjectContextが実際にデータベースに対して使用する SQL 文を調べるには クエリ変数が表わすオブジェクトのメソッドを使用します ObjectContextのクエリ変数は ObjectQuery 型のオブジェクトであり このオブジェクトの ToTraceString メソッドを使用します この章の理解度チェック ( 第 10 章 ) 1. 型指定されたデータセットのデータとリストボックスとの間でバインドする方法には 次の 3 種類があります リストボックスの DataSourceプロパティ ( および Display Memberプロパティや ValueMemberプロパティ ) に ソースコード上でバインディングの対象となるデータを指定するコードを記述する デザイナー上に型指定されたデータセットをドロップしてコンポーネントトレイに貼り付けた上で プロパティウィンドウを使用してリストボックスの DataSource プロパティに設定する データソースウィンドウからバインドしたいデータ項目を フォームデザイナー上にドロップする 2. In の後ろに記述されたコレクションオブジェクトである変数 arr (ArrayListオブジェクト) には 要素としてCustomerクラスのオブジェクトが含まれており それをFor Eachループの Integer 型の範囲変数 dtにキャストしたため 実行時エラーが起こりました 一方 ArrayListの要素はクラスライブラリの定義上はObject 型なので コンパイラは Object 型から Integer 型へのキャストとみなしエラーとはしません コンパイル時に この不正を検出するには ArrayListの代わりに ジェネリッ 30

31 ク対応のList(Of T) を使用するようにします もちろん コンパイルエラーが発覚した後 さらに修正は必要ですが 少なくともジェネリッククラスList(Of T) を使用すれば コンパイル時にエラーを検出できます 3. LINQ のクエリ式を使用して 注文明細の行単位の小計から 全体の合計を算出するには 次のように記述します Private Sub UpdateTotal() Dim total As Decimal total = Aggregate row In SalesDBDataSet1.OrdersList Into Sum(row.Total) TotalBox.Text = String.Format( "{0:#,##0}", CDec(total)) 解答プログラム Chap10 Sample03-Ver.1.7 図 A.6 データソースウィンドウ 4. この設問で追加したテーブルアダプター ( およびテーブル ) は データセットデザイナー (SalesDBDataSet.xsd) では 図 A.5 の SalesHitory というタイトルとして表示されます テーブルアダプター (TableAdapter) の追加方法は 例 10.2の注文プログラム WinAppOrder Ver.1.6での手順 ( ページ ) を参考にしてください フォームFormSalesHistory.vbのソースコードとして 次のようなものが考えられます 呼び出し元のメインフォームから コンストラクターの引数を介して 製品の ID と名前を受け取る点に注意してください Imports OurCorp.SalesDBDataSetTableAdapters Public Class FormSalesHistory Private myproductid As Integer Private myproductname As String Public Sub New(ByVal prodid As Integer, ByVal name As String) InitializeComponent() myproductid = prodid myproductname = name Private Sub FormSalesHistory_Load(... Dim adapter As _ New SalesHistoryTableAdapter() 図 A.5 データセットデザイナー (SalesDBDataSet.xsd) WinAppSaleプロジェクト側のデータソースウィンドウには 図 A.6のように表示されます ProductLibsプロジェクトをアクティブにした状態 ( 選択された状態 ) のデータソースウィンドウではなく WinAppSaleプロジェクトがアクティブな状態で このように表示できるようにしてください ( SalesHistory ノードが新たに追加された状態 ) Try adapter.fill( SalesDBDataSet.SalesHistory, myproductid) Catch ex As Exception MsgBox( " 該当する製品データの " & " 検索に失敗しました ") Return 31

Section1_入力用テンプレートの作成

Section1_入力用テンプレートの作成 入力用テンプレートの作成 1 Excel には 効率よく かつ正確にデータを入力するための機能が用意されています このセクションでは ユーザー設定リストや入力規則 関数を利用した入力用テンプレートの作成やワークシート操作について学習します STEP 1 ユーザー設定リスト 支店名や商品名など 頻繁に利用するユーザー独自の連続データがある場合には ユーザー設定リスト に登録しておけば オートフィル機能で入力することができ便利です

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 12 回目クラス 今日の講義で学ぶ内容 クラスとは クラスの宣言と利用 クラスの応用 クラス クラスとは 異なる複数の型の変数を内部にもつ型です 直観的に表現すると int 型や double 型は 1 1 つの値を管理できます int 型の変数 配列型は 2 5 8 6 3 7 同じ型の複数の変数を管理できます 配列型の変数 ( 配列変数 ) クラスは double

More information

立ち読みページ

立ち読みページ 2 Access データベースの作成 テーブルの作成と編集 フォームの作成と 編集 レポートの作成と編集など Access データベース要素の作成と書 式設定について解説します 2-1 データベースを作成する 69 2-2 テーブルを作成する 72 2-3 テーブルを編集する 77 2-4 フィールドを作成してフィールドプロパティを編集する 84 2-5 フォームを作成する 96 2-6 レポートを作成する

More information

C#の基本

C#の基本 C# の基本 ~ 開発環境の使い方 ~ C# とは プログラミング言語のひとつであり C C++ Java 等に並ぶ代表的な言語の一つである 容易に GUI( グラフィックやボタンとの連携ができる ) プログラミングが可能である メモリ管理等の煩雑な操作が必要なく 比較的初心者向きの言語である C# の利点 C C++ に比べて メモリ管理が必要ない GUIが作りやすい Javaに比べて コードの制限が少ない

More information

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部

第 2 章 PL/SQL の基本記述 この章では PL/SQL プログラムの基本的な記述方法について説明します 1. 宣言部 2. 実行部 3. 例外処理部 はじめに コース概要と目的 Oracle 独自の手続き型言語である PL/SQL について説明します PL/SQL の基本構文 ストアド サブプログラム トリガーの作成方法 またストアド サブプログラムの管理について習得することを目的としています 受講対象者 これから PL/SQL を使用してアプリケーション開発をされる方 前提条件 SQL トレーニング コースを受講された方 もしくは 同等の知識をお持ちの方

More information

編集する ファイルを開く マイクロデータの設定を行うファイルまたはファイルを開きます 開かれたファイルは編集画面に表示されて ブラウザ表示した時のプレビューも同時に表示されます HTML ファイルの選択 編集する ファイルを開くためにメインメニューから ファイル 開く を選びます ファイル選択ダイア

編集する ファイルを開く マイクロデータの設定を行うファイルまたはファイルを開きます 開かれたファイルは編集画面に表示されて ブラウザ表示した時のプレビューも同時に表示されます HTML ファイルの選択 編集する ファイルを開くためにメインメニューから ファイル 開く を選びます ファイル選択ダイア 基本操作編 編集するファイルを開く... ファイルの選択... 各パネルの表示非表示... マイクロデータ : の編集... 編集するテキストの選択... 適用するテキストの選択... アイテムタイプの選択... アイテムタイプの検索... よく使うアイテムタイプの登録... よく使うアイテムタイプの削除... 定型セットの登録... 定型セットの削除... 定型セット内のアイテムタイプの削除...

More information

やってみようINFINITY-写真管理 編-

やってみようINFINITY-写真管理 編- 目次 やってみよう for Wingneo INFINITY やってみよう for Wingneo INFINITY... 1 目次... 1 システムの起動... 1 写真管理に登録する写真を準備する... 1 写真管理 ( 電子納品 ) の操作方法... 2 写真整理... 2 成果区分の設定... 4 成果管理から電納編集ツールへの操作方法... 5 電納編集ツール ( 写真管理 ) の操作方法

More information

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

書式に示すように表示したい文字列をダブルクォーテーション () の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf( 情報処理基礎 ); printf(c 言語の練習 ); printf 情報処理基礎 C 言語についてプログラミング言語は 1950 年以前の機械語 アセンブリ言語 ( アセンブラ ) の開発を始めとして 現在までに非常に多くの言語が開発 発表された 情報処理基礎で習う C 言語は 1972 年にアメリカの AT&T ベル研究所でオペレーションシステムである UNIX を作成するために開発された C 言語は現在使われている多数のプログラミング言語に大きな影響を与えている

More information

問題 1 次の文章は 作業環境について述べたものである を解答群 { } より選び その記号で答えよ にあてはまる適切なもの 設問 1. < 図 1>はルーラーの一部である 1に示されるインデントマーカーを移動することにより を設定することができる < 図 1> { ア. 1 行目のインデントイ.

問題 1 次の文章は 作業環境について述べたものである を解答群 { } より選び その記号で答えよ にあてはまる適切なもの 設問 1. < 図 1>はルーラーの一部である 1に示されるインデントマーカーを移動することにより を設定することができる < 図 1> { ア. 1 行目のインデントイ. Microsoft PowerPoint プレゼンテーション技能認定試験 上級 2007 サンプル問題 知識試験 制限時間 30 分 受験会場 受験番号 氏 名 問題 1 次の文章は 作業環境について述べたものである を解答群 { } より選び その記号で答えよ にあてはまる適切なもの 設問 1. < 図 1>はルーラーの一部である 1に示されるインデントマーカーを移動することにより を設定することができる

More information

JavaプログラミングⅠ

JavaプログラミングⅠ Java プログラミング Ⅰ 2 回目 ようこそ Java へ 今日の講義で学ぶ内容 画面へのメッセージの表示 文字や文字列 数値を表現するリテラル 制御コードを表すエスケープシーケンス 画面出力の基本形 ソースファイル名 : クラス名.java class クラス名 System.out.println(" ここに出力したい文字列 1 行目 "); System.out.println(" ここに出力したい文字列

More information

SQL インジェクションの脆弱性

SQL インジェクションの脆弱性 別紙 脆弱性体験学習ツール AppGoat ハンズオンセミナー 演習解説 SQL インジェクションの脆弱性 [ 演習 ] AppGoat を用いた疑似攻撃体験 SQL インジェクションのテーマ 不正なログイン ( 文字列リテラル ) 画面上に Congratulations!! と表示されると演習クリアです 3 脆弱性のある箇所を特定する ログイン ID またはパスワードにシングルクォート ' を入力し

More information

Windows Server 2003 Service Pack 適用手順書

Windows Server 2003 Service Pack 適用手順書 CLUSTERPRO X for Windows Windows Server 2008 Service Pack 適用手順書 第 1 版 2009 年 6 月 23 日 本手順書では CLUSTERPRO X 2.0/2.1 環境における Windows Server 2008 Service Pack 2 の適用方法を説明します 以降 特に記述のない場合 Service Pack は Windows

More information

ファイル管理

ファイル管理 4. ファイルやフォルダーの管理 1 Windows8 でのファイルの管理の基本操作について学習します 4-1 新しいフォルダーの作成 ファイルは関連する内容ごとに フォルダーに分類して管理します 目的のファイルが検索しやすいようにフォルダー名はわかり易い名前にしましょう 操作新しいフォルダーを作成します ドキュメント フォルダー内に新規フォルダーを作成します 1[ クイックアクセスツールバー ]

More information

スライド 1

スライド 1 1 新機能追加 リリース :2014/7/13 1.1 Salesforce1 アプリケーション開発対応既存のブラウザ画面 ( フルサイト ) と同様に Salesforce1 アプリケーション画面も開発できるようになりました Salesforce 社と同様 サポート対応範囲は各種デバイスのアプリ ブラウザになります PC デバイス アプリ ブラウザ ブラウザ (Chrome ) モバイル ipad

More information

POWER EGG2.0 Ver2.8 スタートアップガイド ~Webデータベース 応用編~

POWER EGG2.0 Ver2.8 スタートアップガイド ~Webデータベース 応用編~ POWER EGG2.0 Ver2.8 スタートアップガイド ~ Web データベースの作成応用編 ~ 第 1 版 2016 年 3 月ディサークル株式会社 改版履歴 版数 改版年月日 備考 1.0 2016/03/04 初版 (POWER EGG2.0 Ver2.8 版 ) 目次 はじめに... 1 第 1 章データベース間の連携設定... 2 1-1 WebDB 間連携項目フィールドの作成...

More information

目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発... 7 手順 1. アプリケーションの作成... 7 手順 2. データソースの作成と代入... 7 手順 3. テンプレートの作成 手順 4. レポートビューアの追加

目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発... 7 手順 1. アプリケーションの作成... 7 手順 2. データソースの作成と代入... 7 手順 3. テンプレートの作成 手順 4. レポートビューアの追加 SharpShooter Reports.Win 基本的な使い方 Last modified on: November 15, 2012 本ドキュメント内のスクリーンショットは英語表記ですが SharpShooter Reports JP( 日本語版 ) では日本語で表示されま す 目次 はじめに... 3 システムの必要条件... 4 ライセンス認証... 4 アクティベーション... 6 開発...

More information

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String

1.SqlCtl クラスリファレンス SqlCtl クラスのリファレンスを以下に示します メソッドの実行中にエラーが発生した場合は標準エラー出力にメッセージを出力します (1)Connect() メソッド データベースへ connect 要求を行います boolean Connect(String 目次 1.SqlCtl クラスリファレンス 2 (1)Connect() メソッド 2 (2)DisConnect() メソッド 3 (3)Commit() メソッド 3 (4)Rollback() メソッド 4 2.SqlStm クラスリファレンス 5 (1)Prepare() メソッド 5 (2)Execute() メソッド 6 (3)Release() メソッド 6 (4)Immediate()

More information

4. 環境変数の設定実行にあたり 次のように環境変数を設定する必要があります 1)SJIS ロケールの指定コマンド例 )export LANG=ja_JP.sjis 2)MQ 環境の指定コマンド例 ). /opt/mqm/bin/setmqenv s 3)COBOL 実行環境の指定コマンド例 ).

4. 環境変数の設定実行にあたり 次のように環境変数を設定する必要があります 1)SJIS ロケールの指定コマンド例 )export LANG=ja_JP.sjis 2)MQ 環境の指定コマンド例 ). /opt/mqm/bin/setmqenv s 3)COBOL 実行環境の指定コマンド例 ). Micro Focus Enterprise Developer チュートリアル 1. 目的 本チュートリアルでは CICS から入力したメッセージを MQ へ連携する方法の習得を目的としています 2. 前提 使用した OS : Red Hat Enterprise Linux Server release 6.5 x64 使用した WebSphere MQ : IBM WebSphere MQ 7.5.0.1

More information

5.1. ホームページ登録 ホームページ URL を登録します ホームページ URL は基本契約で 1 個 (100MB) まで無料 2 個目以降は有料オプションサービス ( 月額 300 円 / 個 ) で追加登録が可能です (1) 左メニューの HP アカウント登録 リンクをクリックします (1

5.1. ホームページ登録 ホームページ URL を登録します ホームページ URL は基本契約で 1 個 (100MB) まで無料 2 個目以降は有料オプションサービス ( 月額 300 円 / 個 ) で追加登録が可能です (1) 左メニューの HP アカウント登録 リンクをクリックします (1 5. HP( ホームページ ) アカウント情報 ホームページアカウント情報では ホームページ URL の取得やパスワードの変更 ホームページ容量の追加 authid の設定など ホームページ URL に関する管理が行えます HP アカウント情報 にアクセスするには 世帯情報参照 画面で HP アカウント情報 のリンクをクリックします 新しくホームページ URL を取得する場合は 41 ページへ FTP

More information

<4D F736F F D205F88EA94CA8CFC82AF5F EE888F88F912E646F63>

<4D F736F F D205F88EA94CA8CFC82AF5F EE888F88F912E646F63> CADSUPER FXⅡ 設定情報ユーティリティ 利用手引書 1/24 目次 1. はじめに... 3 1-1. 設定情報ユーティリティの機能... 3 1-2. 動作環境... 3 2. バックアップ... 4 2-1. 処理イメージ... 4 2-2.CADSUPER FXⅡ の設定情報をバックアップする手順について... 5 2-3. 動作条件及び注意事項... 8 3. リストア... 9

More information

データの作成方法のイメージ ( キーワードで結合の場合 ) 地図太郎 キーワードの値は文字列です キーワードの値は重複しないようにします 同じ値にする Excel データ (CSV) 注意キーワードの値は文字列です キーワードの値は重複しないようにします 1 ツールバーの 編集レイヤの選択 から 編

データの作成方法のイメージ ( キーワードで結合の場合 ) 地図太郎 キーワードの値は文字列です キーワードの値は重複しないようにします 同じ値にする Excel データ (CSV) 注意キーワードの値は文字列です キーワードの値は重複しないようにします 1 ツールバーの 編集レイヤの選択 から 編 手順 4 Excel データを活用する ( リスト / グラフ 色分け ) 外部の表データ (CSV 形式 ) を読み込み リスト表示やカード表示 その値によって簡単なグラフ ( 円 正方形 棒の 3 種類 ) や色分け表示することができます この機能を使って地図太郎の属性情報に無い項目も Excel で作成し CSV 形式で保存することにより 自由に作成することができます (Excel でデータを保存するとき

More information

目次 1. デジタル押し花の作り方 3 2. デジタル押し花をきれいに仕上げる方法 まとめ 課題にチャレンジ 19 レッスン内容 デジタル押し花 マイクロソフト社のワープロソフト Word 2010( これ以降 Word と記述します ) の図ツールに搭載されている [ 背景

目次 1. デジタル押し花の作り方 3 2. デジタル押し花をきれいに仕上げる方法 まとめ 課題にチャレンジ 19 レッスン内容 デジタル押し花 マイクロソフト社のワープロソフト Word 2010( これ以降 Word と記述します ) の図ツールに搭載されている [ 背景 le Word で楽しむデジタル押し花 Sa mp Word の画像加工 1 本テキストの作成環境は 次のとおりです Windows 7 Home Premium Microsoft Word 2010 画面の設定 解像度 1024 768 ピクセル 本テキストは 次の環境でも利用可能です Windows 7 Home Premium 以外のオペレーティングシステムで Microsoft Word

More information

1 準備 1 ダウンロードした受験プログラムをダブルクリックします ファイル名の v の部分は変更される場合があります 2 セキュリティ警告のダイアログボックスが表示される場合は [ 実行 ] をクリックします オープニング画面が表示されます 3 [ 次へ ] をクリックします 試験の

1 準備 1 ダウンロードした受験プログラムをダブルクリックします ファイル名の v の部分は変更される場合があります 2 セキュリティ警告のダイアログボックスが表示される場合は [ 実行 ] をクリックします オープニング画面が表示されます 3 [ 次へ ] をクリックします 試験の サーティファイソフトウェア活用能力認定委員会 サンプル問題受験プログラムの使い方 (Office2010/2013 共通 ) Version 3.2.0.3 このプログラムは サーティファイソフトウェア活用能力認定委員会主催のExcel Word Access PowerPointの各認定試験の受験を体験していただくためのものです プログラムを使用する前に この内容を確認し認定試験の流れを理解した上で

More information

WLX302 取扱説明書

WLX302 取扱説明書 WLX302 2 3 4 5 6 7 8 9 にインストール 10 11 12 13 点 消 14 15 16 1 2 17 3 18 19 1 2 3 20 1 2 3 4 21 1 2 3 22 1 2 3 4 23 1 2 24 3 25 1 2 3 26 1 2 27 3 4 28 1 2 29 3 4 30 1 2 31 1 2 3 32 1 2 33 第4章 3 本製品に無線 LAN 接続する

More information

1 フリーページを表示する 1-1 フリーページのカテゴリを作成します フリーページのカテゴリの情報を入力します 1 複数のフリーページを記事のジャンルや種類で分け その見出しを入力します お店ページの左サイドバーに表示します 2 消費者が 検索エンジンで検索するであろう 記事の特長や内容をあらわす

1 フリーページを表示する 1-1 フリーページのカテゴリを作成します フリーページのカテゴリの情報を入力します 1 複数のフリーページを記事のジャンルや種類で分け その見出しを入力します お店ページの左サイドバーに表示します 2 消費者が 検索エンジンで検索するであろう 記事の特長や内容をあらわす フリーページを作成 表示する方法 < 目次 > 1 フリーページを表示する 2 1-1 フリーページのカテゴリを作成します 1-2 フリーページの記事を作成します 2 フリーページの記事を編集する 6 3 コメント トラックバックを管理する 7 3-1 コメントの掲載状態を変更します 3-2 トラックバックの掲載状態を変更します 4 フリーページのカテゴリの表示設定とレイアウトを調整する 9 このページは

More information

スライド 1

スライド 1 WindowsForm サンプル解説 S2Container.NET, S2Dao.NET コミッタ 藤井宏明 1 S2Container.NET の Examples フォルダに付属する WindowsSample の解説です 概要 アプリケーション アーキテクチャー ソリューション構成 プロジェクト概要 サンプル説明 2 Ⅰ. アプリケーション アーキテクチャー 3 アプリケーション アーキテクチャー

More information

PowerPoint Presentation

PowerPoint Presentation ソフトウェア演習 B GUI を持つ Java プログラムの 設計と実装 4.1 例題 :GUI を持った電卓を作ろう プロジェクトCalculator パッケージ名 :example ソースファイル : Calculator.java GUI.java EventProcessor.java 2 4.2 GUI とイベント処理 GUI の構成 :Swing GUI の場合 フレーム JFrame:

More information

Microsoft Word - Word1.doc

Microsoft Word - Word1.doc Word 2007 について ( その 1) 新しくなった Word 2007 の操作法について 従来の Word との相違点を教科書に沿って説明する ただし 私自身 まだ Word 2007 を使い込んではおらず 間違いなどもあるかも知れない そうした点についてはご指摘いただければ幸いである なお 以下において [ ] で囲った部分は教科書のページを意味する Word の起動 [p.47] Word

More information

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10

Exam : J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10 PASSEXAM http://www.passexam.jp Exam : 70-461J Title : Querying Microsoft SQL Server 2012 Version : DEMO 1 / 10 1. あなたが ContosoDb 付きの Microsoft SQL Server 2012 のデータベースを管理します 展示に示すように テーブルが定義されています ( 図表ボタンをクリックします

More information

Oracle BI Publisherを利用したレポートの作成

Oracle BI Publisherを利用したレポートの作成 第 1 版 作成日 :2007 年 7 月 31 日 更新日 :2007 年 7 月 31 日 目次 Ⅰ.BIPの起動... 3 Ⅱ.Template Builderのセットアップ... 4 Ⅲ. レポートの作成... 7 Ⅲ-1.BIP Desktopへのログイン... 7 Ⅲ-2. レポートの作成... 9 Ⅲ-2-1. チャートの作成... 9 Ⅲ-2-2. 表の作成... 10 Ⅲ-2-3.

More information

ホームページ・ビルダー16

ホームページ・ビルダー16 Part 2 テンプレートからページを 作 る(3) Part 2-3 テンプレートを 使 ってページを 作 ろう テンプレートを 利 用 してホームページを 作 りましょう テンプレートを 利 用 すると 文 字 や 画 像 を 差 し 替 えるだけ で 魅 力 的 で 華 やかなページを 作 ることができます 特 にフル CSS テンプレートを 利 用 して 作 ったページは ページのデザインやレイアウトをスタイルシートで

More information

Java言語 第1回

Java言語 第1回 Java 言語 第 2 回簡単な Java プログラムの作成と実行 知的情報システム工学科 久保川淳司 kubokawa@me.it-hiroshima.ac.jp 簡単な Java プログラム Java プログラムのファイル名 Java プログラムのファイル名命名ルール ファイル名とクラス名は同じでなければならない HelloJava.java public class HelloJava { public

More information

内容 専用アプリケーションをインストールする... 3 アカウントを設定する... 5 ファイル フォルダをアップロードする... 8 ファイル フォルダをダウンロードする 専用アプリケーションをアンインストールする 転送状態 ( ファイルアップロード進捗状況 ) を確認する

内容 専用アプリケーションをインストールする... 3 アカウントを設定する... 5 ファイル フォルダをアップロードする... 8 ファイル フォルダをダウンロードする 専用アプリケーションをアンインストールする 転送状態 ( ファイルアップロード進捗状況 ) を確認する ServersMan@Disk Windows 版専用アプリケーション操作マニュアル 1 内容 専用アプリケーションをインストールする... 3 アカウントを設定する... 5 ファイル フォルダをアップロードする... 8 ファイル フォルダをダウンロードする... 11 専用アプリケーションをアンインストールする... 12 転送状態 ( ファイルアップロード進捗状況 ) を確認する... 14

More information

概要 ABAP 開発者が SAP システム内の SAP ソースまたは SAP ディクショナリーオブジェクトを変更しようとすると 2 つのアクセスキーを入力するよう求められます 1 特定のユーザーを開発者として登録する開発者キー このキーは一度だけ入力します 2 SAP ソースまたは SAP ディクシ

概要 ABAP 開発者が SAP システム内の SAP ソースまたは SAP ディクショナリーオブジェクトを変更しようとすると 2 つのアクセスキーを入力するよう求められます 1 特定のユーザーを開発者として登録する開発者キー このキーは一度だけ入力します 2 SAP ソースまたは SAP ディクシ オンラインヘルプ :SAP ソフトウェア変更登録 (SSCR) キーの登録 目次 概要... 2 参考リンク... 3 アプリケーションの起動... 4 アプリケーションとメインコントロールの概要... 5 キーリストのカスタマイズ... 7 リストのフィルタリング... 7 表のレイアウトのカスタマイズ... 8 新しい開発者の登録... 10 新しいオブジェクトの登録... 12 特定のインストレーションから別のインストレーションに個々の

More information

3. ユーザー情報の登録 必要事項をご入力の上 申込み ボタンを押してください ご利用される方のお名前を入力してください 個人名以外の名称は サポートセンターからの ご連絡の際に連絡がうまくとれないなど不都合が 生じる恐れがありますので ご遠慮いただいています 複数のメールアドレスを登録することはで

3. ユーザー情報の登録 必要事項をご入力の上 申込み ボタンを押してください ご利用される方のお名前を入力してください 個人名以外の名称は サポートセンターからの ご連絡の際に連絡がうまくとれないなど不都合が 生じる恐れがありますので ご遠慮いただいています 複数のメールアドレスを登録することはで Ashisuto Web Support Center AWSC ユーザーガイド 1.アカウント登録手順... 1 2.ログイン手順... 5 3.アカウント登録内容の変更手順... 6 4.問い合わせ登録手順... 10 5.問い合わせ更新手順... 12 6.ファイルアップロード手順... 16 7.パスワードがご不明の場合... 21 [ 1 ] アカウント登録手順 1. アカウント登録ページへのアクセス

More information

ことばを覚える

ことばを覚える 業務部門の担当者による担当者のための業務アプリケーションの作り方 ( その 4) 現在在庫の適正化のための 在庫管理ツールの構築 コンテキサー操作演習 20121113 コンテキサーチュートリアル ( バージョン 2.2 用 ) コンテキサーのバージョンは 2.2.12 以降で行ってください 目次 ステップ1 在庫棚卸パネルの作成 --- 9 ステップ2 在庫品目パネルの作成 --- 17 ステップ3

More information

エクセルによる数値計算と化学への応用

エクセルによる数値計算と化学への応用 エクセルによる数値計算と化学への応用 群馬大学工学部 応用化学 生物化学科 平成 21 年 4 月 前期に PC を使った文書作成 表計算 プレゼンテーションを習得しました 後期には主に表計算を より高度に利用するための手法を勉強します 第 1 章計算の基礎 1.1 文字の表示 文字 ABC 1.2 四則計算 8 + 2 = 10 8-2 = 6 8 2 = 16 8 2 = 4 1.3 数列の和

More information

// このクラスの有効期間中の各呼び出しに使用される キャッシュされた Socket オブジェクト Socket socket = null; // 非同期処理が完了したことを通知するために信号を送るオブジェクト static ManualResetEvent clientdone = new Ma

// このクラスの有効期間中の各呼び出しに使用される キャッシュされた Socket オブジェクト Socket socket = null; // 非同期処理が完了したことを通知するために信号を送るオブジェクト static ManualResetEvent clientdone = new Ma HOW DO I ソケットで通信を行うには ここでは以下の手順で説明します ソケットクライアントを作成するデータを送信するデータを受信するソケットクライアントを使用する ソケットクライアントを作成する 1. このコンテンツのサポートファイルの Start フォルダから "UDPClient" プロジェクトを開きます 2. クライアントを動作させるため コンピューターで簡易 TCP/IP サービスを有効にする必要があります

More information

Vectorworksサイトプロテクションネットワーク版-情報2

Vectorworksサイトプロテクションネットワーク版-情報2 Vectorworks サイトプロテクションネットワーク版 - 情報 2 セットアップリスト A&A セットアップリストについて 概要 ) 本リストは Vectorworksサイトプロテクションネットワーク版 ( 以下 SPN 版 ) のサーバアプリケーションが正しくセットアップされたかを確認する為のリストです 本リストを全てクリアすれば SPN 版が使用できる環境が整った事を意味します 使い方 )

More information

E01 前年度一括申告情報を取り込むには 前年度一括申告情報 (CSV Excel ファイル ) 取込 ボタンをクリックして前年度一括申告データを読込ます CSV データは 各都道府県医師会に日本医師会より提供されています 項目があっていれば独自に用意したファイルを読み取ることも可能です ( 注 )

E01 前年度一括申告情報を取り込むには 前年度一括申告情報 (CSV Excel ファイル ) 取込 ボタンをクリックして前年度一括申告データを読込ます CSV データは 各都道府県医師会に日本医師会より提供されています 項目があっていれば独自に用意したファイルを読み取ることも可能です ( 注 ) 項目の番号をクリックすると該当のページへ遷移します 3 ソフト 2: 名簿等変換補助ソフト 3.1 前年度一括申告情報の取込 E01 前年度一括申告情報を取り込むには 3.2 氏名又は医籍登録番号の検索と情報の付加 F01 コピー & ペーストにより氏名から医籍登録番号を検索し医籍登録番号を自動付加するには F02 コピー & ペーストにより医籍登録番号から氏名を検索し氏名を自動付加するには F03

More information

北海道経済 社会指標データベース操作マニュアル 北海道開発局開発監理部開発計画課 目 次 1 データベースの準備...1 1.1 動作環境... 1 1.2 データベースのインストール... 1 1.3 データベースのアンインストール... 1 1.4 データベースの起動と終了... 2 2 データベースの検索メニュー...3 2.1 画面構成... 3 3 統計データ検索...5 3.1 画面構成...

More information

1/8 ページ Java 基礎文法最速マスター Java Javaの文法一覧です 他の言語をある程度知っている人はこれを読めばJavaの基礎をマスターしてJavaを書くことができるようになっています 簡易リファレンスとしても利用できると思いますので これは足りないと思うものがあれば教えてください 1. 基礎 class の作成プログラムはclassに記述します たとえばSampleという名前のclassを作る場合

More information

すだちくんメール法人(所属設定職員管理)_docx

すだちくんメール法人(所属設定職員管理)_docx すだちくんメール 法 管理マニュアル 所属設定 職員管理所属設定 職員管理 第 1 版 作成日 2015 年 12 月 7 日 最終更新日 2015 年 12 月 7 日 目次 概要... 2 法人管理画面... 3 ログイン... 3 所属名称管理... 5 所属 (1 階層目 ) の新規登録... 5 所属 (2 階層目以降 ) の新規登録... 6 CSV ファイルを使用した所属の一括登録...

More information

DIGNO® ケータイ ユーザーガイド

DIGNO® ケータイ ユーザーガイド ブラウザ画面の操作のしかた ブラウザ画面の見かた お気に入り一覧 / 履歴一覧を利用する ( メニュー ) お気に入り / 履歴表示 を押すとお気に入り / 履歴を切り替えられま お気に入り一覧について詳しくは お気に入りからアクセスする を参照してください 履歴一覧について詳しくは 閲覧履歴からアクセスする を参照してください Web 検索 URL 入力をする URL 表示情報を表示タブ数表示開いているタブの数が表示されま

More information

ESET NOD32 アンチウイルス 6 リリースノート

ESET NOD32 アンチウイルス 6 リリースノート ====================================================================== ESET NOD32 アンチウイルス 6 リリースノート キヤノンITソリューションズ株式会社 ====================================================================== はじめにキヤノンITソリューションズ製品をご愛顧いただき誠にありがとうございます

More information

2 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C Express の使用法 ( 東海大学理学部物理学科 ) 無償で利用できる開発環境 (Windows XP 以降 ) Visual Studio 2010 Express

2 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C Express の使用法 ( 東海大学理学部物理学科 ) 無償で利用できる開発環境 (Windows XP 以降 ) Visual Studio 2010 Express 1 / 26 平成 26 年 4 月 11 日 ( 金 ) 午後 1 時 9 分 Visual C++ 2010 Express の使用法 ( 安江正樹 @ 東海大学理学部物理学科 ) Visual C++ 2010 Express の使用法 コンソールプログラムの作成方法と実行 コンピュータ物理学演習 Ⅱ 東海大学理学部物理学科 安江正樹 yasue@keyaki.cc.u-tokai.ac.jp

More information

DB STREET 設置マニュアル

DB STREET 設置マニュアル DB STREET 設置マニュアル イーマックス目黒光一 1/23 1 はじめに... 3 2 会員詳細ページへのログイン... 4 3 サイト情報の設定... 5 4 一覧ページ画面の設定...13 5 詳細ページ画面の設定...15 6 お問い合わせページの設定...16 7 検索項目の設定...21 8 テンプレートのダウンロード...23 9 CSVアップロード...23 10 その他...

More information

8. 適用 を後 OK をしウインドウを閉じてください 2. パソコンと LCV3 を LAN ケーブルで接続し 設定を行います Windows パソコンの推奨環境は以下の通りです (2015 年 6 月現在 ) OS : Windows XP Vista 7 8 CPU : 32bit 64bit

8. 適用 を後 OK をしウインドウを閉じてください 2. パソコンと LCV3 を LAN ケーブルで接続し 設定を行います Windows パソコンの推奨環境は以下の通りです (2015 年 6 月現在 ) OS : Windows XP Vista 7 8 CPU : 32bit 64bit 2015.10.8 マスプロ電工株式会社 本手順書は デジタルレベルチェッカー LCV3 の Web ブラウザーによるソフトウェア更新の手順を説明した資料です Web ブラウザーより LCV3 をバージョンアップする手順は以下の 4 段階で実施します 1. パソコン上に新しいソフトウェアをコピーします 2. パソコンと LCV3 を LAN ケーブルで接続します 3. LCV3 を新しいソフトウェアに更新します

More information

Microsoft PowerPoint pptx

Microsoft PowerPoint pptx データベース 第 11 回 (2009 年 11 月 27 日 ) テーブル結合と集計 ( 演習 ) 第 11 回のテーマ 前回より シラバスから離れ 進捗状況に合わせて全体構成を変更しています テーマ1: テーブルの結合 テーマ 2: 結合した結果からの様々な検索 テーマ3: 集計の方法 今日学ぶべきことがら Select 文のさまざまな表現 Natural join sum(*) orrder

More information

目次 既存アカウントにモバイルライセンスキーコードを追加 ライセンスキーコードを追加 ポータルへモバイルデバイスを追加 電話番号の入力ルール /AU 端末の制限 ( 留意事項 ) ダウンロードリンクの通知 (SMS 配信 )/ 子デバイスキー生成 モバイルデバイスへのソフトウェアダウンロード ダウン

目次 既存アカウントにモバイルライセンスキーコードを追加 ライセンスキーコードを追加 ポータルへモバイルデバイスを追加 電話番号の入力ルール /AU 端末の制限 ( 留意事項 ) ダウンロードリンクの通知 (SMS 配信 )/ 子デバイスキー生成 モバイルデバイスへのソフトウェアダウンロード ダウン エンドポイントウィルス対策サービス モバイル端末利用者向けマニュアル [ エンドポイントウィルス対策サービス利用者さま向け ] 0 年 8 月 日 Version.0 bit-drive Copyright 0 Sony Business Solutions Corporation 目次 既存アカウントにモバイルライセンスキーコードを追加 ライセンスキーコードを追加 ポータルへモバイルデバイスを追加

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 演習 9 入力した条件に従いデータベースからデータを抽出する 1 演習 9 製品情報を取得するサンプル パソコン製品情報が格納された表から 任意のメーカー IDを取得するプログラムの構造を検討する sample1.htm sample1.asp SDEV_MST_PRODUCT 2 データベース クライアント サーバー PC_KATABAN KOBAN MAKER_ID HD-0001 1 NED

More information

目次 1. はじめに ライセンス証書の受領 ライセンス証書に含まれる内容 環境前提条件 準備 インストール環境の確認 ファイル インストール インストール後の Dr

目次 1. はじめに ライセンス証書の受領 ライセンス証書に含まれる内容 環境前提条件 準備 インストール環境の確認 ファイル インストール インストール後の Dr Dr.Web KATANA for Windows Ver.1.0 インストールガイド 株式会社 Doctor Web Pacific 初版 : 2015/11/04 改訂 : 2015/11/12 目次 1. はじめに... 3 1.1 ライセンス証書の受領... 3 1.2 ライセンス証書に含まれる内容... 3 2. 環境前提条件... 3 3. 準備... 4 3.1 インストール環境の確認...

More information

構造解析マニュアル@RDstr

構造解析マニュアル@RDstr 構造解析マニュアル @RDstr ~ 片持ち梁の弾性静解析 ~ 岐阜高専構造解析学研究室 H270608 版 1. 解析モデル 下に示すような長さ 1000mm 高さ 100mm 幅 200mm の片持ち梁の弾性解析を行う 2. Salome-meca でのメッシュの作成 1 1 アイコンをクリックして Salome-meca を起動する 2 2 ジオメトリのアイコンをクリックする 表示されるウィンドウで

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 基礎演習 3 C 言語の基礎 (5) 第 05 回 (20 年 07 月 07 日 ) メモリとポインタの概念 ビットとバイト 計算機内部では データは2 進数で保存している 計算機は メモリにデータを蓄えている bit 1bit 0 もしくは 1 のどちらかを保存 byte 1byte 1bitが8つ集まっている byte が メモリの基本単位として使用される メモリとアドレス メモリは 1byte

More information

レポート作成に役立つWord2013の機能

レポート作成に役立つWord2013の機能 レポート作成に役立つ Word2013 の機能 神戸親和女子大学情報処理教育センター 2015 年 10 月版 目次 1 文字数や行数を指定する... 2 2 ページ番号... 3 2.1 ページ番号をつける... 3 2.2 先頭ページだけページ番号を非表示にする... 4 2.3 3 ページ目からページ番号をつける... 5 2.4 ページ番号の開始番号を指定する... 7 3 目次の作成 更新...

More information

タッチディスプレイランチャー

タッチディスプレイランチャー タッチディスプレイランチャー バージョン.0 取扱説明書 もくじ はじめに 3 ランチャーについて 4 ランチャーの操作方法 5 グループを変える 5 設定について 6 アイコンを新規登録する 7 登録したアイコンを編集する 8 グループの編集 0 壁紙を変更する その他の設定について はじめに 本ソフトウェアは ペン操作やタッチ操作で目的のソフトウェアを起動することができるソフトウェアです ソフトウェアは追加

More information

スライド 1

スライド 1 Internet Explorer の設定マニュアル このマニュアルは 長崎市の入札関連システム ( ) をご利用頂くために必要なInternet Explorerの設定手順を説明します お使いのパソコンの環境 ( ブラウザのバージョンなど ) に応じて必要な設定を行ってください なお お使いのブラウザのバージョンによっては掲載する画面と異なる場合がございます あらかじめご了承ください 入札関連システム

More information

第 1 節 スクリーンショット スクリーンショットとは コンピューターで開いているウィンドウの全体や その一部を 画像として取り込むことができる機能です ここでは 地図の挿入を行います 232

第 1 節 スクリーンショット スクリーンショットとは コンピューターで開いているウィンドウの全体や その一部を 画像として取り込むことができる機能です ここでは 地図の挿入を行います 232 第 8 回 Word 差し込み印刷 231 第 1 節 スクリーンショット スクリーンショットとは コンピューターで開いているウィンドウの全体や その一部を 画像として取り込むことができる機能です ここでは 地図の挿入を行います 232 1. 文書入力 第 7 章 - チャレンジ問題 2 で作成した セミナー開催のご案内 ファイルを開き 次のページに 案内図 を作成します ここでは下図のように入力します

More information

Microsoft Word - Build3264Project.doc

Microsoft Word - Build3264Project.doc 32bit 用インストーラと 64Bit 用インストーラを同一のプロジェクトで作成する 注 ) このドキュメントは InstallShield 2011 Premier Edition を基に作成しています InstallShield 2011 以外のバージョンでは設定名などが異なる場合もあります 概要 MSI 形式インストーラでは Windows Installer の仕様により 32Bit 環境と

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション Group Calendar 2011 のご紹介 画面サンプル集 OnTime Group Calendar Direct Shop ( オンタイムグループカレンダーダイレクトショップ ) https://ontimesuite.jp 画面一覧 利用者画面サンプル 1. 今までのノーツのグループスケジュール 2. これからのノーツのグループスケジュール 3. 特定の凡例だけにフォーカスできます 4.

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 最近よくあるお問い合わせ 本マニュアルでは 最近よくあるお問い合わせの解決手順をまとめました 以下より 該当する現象を選択してください 2014.4.30 改定 ver. 目次 0. 必ずお読み下さい ユーザサポートツールが新しくなりました 2 1. 画面のリンクやボタン タブをクリックしても反応しない 3 2. ライセンス認証に失敗 受講画面が準備完了のまま 受講画面が真っ白 7 3. Windows8

More information

発環境を準備しよう2 章開Eclipseをインストールしようそれでは Eclipseをセットアップしましょう Eclipseは Eclipse Foundationのサイトからダウンロードできます ダウンロードのページを開くと いく

発環境を準備しよう2 章開Eclipseをインストールしようそれでは Eclipseをセットアップしましょう Eclipseは Eclipse Foundationのサイトからダウンロードできます  ダウンロードのページを開くと いく 2.1 Java の開発ツールを入手しよう Java の実行環境と 開発ツールの Eclipse Android 向けアプリケー ションの開発ツール Android SDK をダウンロードしましょう 本書では Windows パソコンへのインストール方法を説明します Javaをインストールしようまず 最新のJava 実行環境を入手しましょう Javaは Java 公式サイト (http://www.java.com/ja/)

More information

スライド 1

スライド 1 So-net レンタルサーバー Piwik 操作手順について 目次 1.Piwik とは? 2.Piwik のご利用開始方法 2-1. インストール 2-2. ログイン 3. アクセス解析方法 3-1. トラッキングコードの発行と埋め込み 3-2.EasySite をご利用の方 3-3.WordPress の活用 4.Piwik の操作手順 4-1. ダッシュボード 4-2. ビジター 4-3. アクション

More information

ESET NOD32 アンチウイルス 8 リリースノート

ESET NOD32 アンチウイルス 8 リリースノート ================================================================== ESET NOD32 アンチウイルス 8 リリースノート キヤノンITソリューションズ株式会社 ================================================================== はじめにキヤノンITソリューションズ製品をご愛顧いただき誠にありがとうございます

More information

変更履歴 Version 年月日変更内容備考 年 12 月 20 日初版

変更履歴 Version 年月日変更内容備考 年 12 月 20 日初版 Calc LibreOffce Calc リファレンスマニュアル Ver._1.00. 変更履歴 Version 年月日変更内容備考 1.00 2013 年 12 月 20 日初版 目次 変更履歴... はじめに...1 略記について...2 対象バージョンについて...3 EXCEL との違い...4 全角 / 半角の取り扱い...4 初期フォントを設定する...4 標準フォントを変更する...5

More information

1.InternetExplorer のバージョン確認手順 1 InternetExplorer を起動します 2 メニューバーより ヘルプ バージョン情報 を選択します メニューバーが表示されていない場合は F10 キーでメニューバーを表示してください 2

1.InternetExplorer のバージョン確認手順 1 InternetExplorer を起動します 2 メニューバーより ヘルプ バージョン情報 を選択します メニューバーが表示されていない場合は F10 キーでメニューバーを表示してください 2 作業を始める前に 作業実施の前提条件として お使いのパソコンが以下の環境の場合に作業が必要となります 他の環境の場合は作業を実施する必要はございません 対象の OS( オペレーティングシステム ) Windows7 WindowsXP をおつかいの教室につきましては作業の必要はありません 対象の InternetExplorer バージョン InternetExplorer8 バージョン確認方法につきましては

More information

imag02_h2-.indd

imag02_h2-.indd EVOLIO EVOLIO P R O D U T I N F O R M A T I O N EVOLIO(エヴォリオ)は サーバー 側 のDBと 連 携 するExcelアプリケーション を 簡 単 に 作 成 するためのツールである もともとは すき 家 や なか 卯 を 筆 頭 に 4147 店 舗 を 展 開 する 外 食 チェーン ゼンショーグループがグループ 統 合 の 基 幹 システ

More information

画像参照画像送り 5 画像下部に再生ボタンが表示されます 再生ボタンをクリックすると 自動コマ送りされます 1

画像参照画像送り 5 画像下部に再生ボタンが表示されます 再生ボタンをクリックすると 自動コマ送りされます 1 画像参照画像送り 画像参照の画像送り方法について説明します 画像上にカーソルを表示した状態で マウスのホイールボタンでスクロールする またはマウスの左ボタンで上下にドラックすると アクティブなシリーズの画像送りができます 1 カルテ タブや 画像 レポート タブから 画像アイコンをクリックします 画像が表示されます 3 画像が切り替わって表示されます シリーズの位置はバー上の で表示されます 2 画像上にカーソルを表示した状態で

More information

方法 4 の手順 パソコンの条件 を確認するための画面を表示する Windows8より前のパソコンでの確認方法 () スタートボタン をクリックする () ( マイ ) コンピューター と書いてある部分を右クリックする (3) プロパティ をクリックする (4) システムの画面が表示される Wind

方法 4 の手順 パソコンの条件 を確認するための画面を表示する Windows8より前のパソコンでの確認方法 () スタートボタン をクリックする () ( マイ ) コンピューター と書いてある部分を右クリックする (3) プロパティ をクリックする (4) システムの画面が表示される Wind まなびの森作成 04..7 Internet Explorer で画面が正しく表示されない場合 状態 画像が表示される部分に が付いていたり 真っ白だったりする 画像の表示が途中で止まってしまう など 例 本来画像が表示される部分に 画像がない 原因 Internet Explorer ( 以下 IE と表記 ) のバージョンが古い 対処方法 方法 易しいが 一時的 キーボードの F5 キーを 回ポンと押す

More information

目次 はじめに... 2 システムの復元 による復旧を行うための前提条件... 2 システムの復元 の注意事項... 2 アダルトサイトの請求画面が表示されたパソコンの復旧の流れ 前提条件の確認 システムの保護 が有効になっていることの確認 適

目次 はじめに... 2 システムの復元 による復旧を行うための前提条件... 2 システムの復元 の注意事項... 2 アダルトサイトの請求画面が表示されたパソコンの復旧の流れ 前提条件の確認 システムの保護 が有効になっていることの確認 適 Rev.1.00 ワンクリック請求被害に遭ったパソコンの復旧手順書 ~ Windows 10 の システムの復元 手順 ~ 目次 はじめに... 2 システムの復元 による復旧を行うための前提条件... 2 システムの復元 の注意事項... 2 アダルトサイトの請求画面が表示されたパソコンの復旧の流れ... 3 1. 前提条件の確認... 4 1.1. システムの保護 が有効になっていることの確認...

More information

掲示板ガイド1

掲示板ガイド1 画面遷移図 掲示板の画面遷移は次の通りです [ ] は それぞれのページ内のリンクあるいはボタンの名称です [ パスワード入力 ] は 管理パスワード の入力が求められることを示します 設定管理 設定管理画面の例と使用方法を示します (1) アクセス制限 アクセス制限 をクリックすると 掲示板へのアクセス制限機能の設定画面が表示されます (2) 管理パスワード変更 管理パスワード変更 をクリックすると

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション Synology インストールガイド 株式会社アスク Synology NAS でできること 家庭内に設置することで簡単に写真や動画の共有が行えます ユーザーごとに閲覧可否を制御することが出来ます 専用のアプリを利用することでスマートフォンやタブレットからもアクセスできます 特定のフォルダのみ閲覧可能 外出先など外部のネットワークからアクセス 写真や動画のアップロード Synology NAS アプリを利用して閲覧

More information

7 ページからの操作手順 (2 ご利用開始の手順 ) で登録したメールアドレス宛に メール通知パスワードが送信されます メール通知パスワードを確認ください ➎ トークン発行 が表示されます [ ワンタイムパスワード申請内容選択へ ] ボタンを押します 登録した携帯電話にメールが送信されます ワンタイ

7 ページからの操作手順 (2 ご利用開始の手順 ) で登録したメールアドレス宛に メール通知パスワードが送信されます メール通知パスワードを確認ください ➎ トークン発行 が表示されます [ ワンタイムパスワード申請内容選択へ ] ボタンを押します 登録した携帯電話にメールが送信されます ワンタイ (1) ワンタイムパスワードの申請 ワンタイムパスワードとは? ワンタイムパスワードとは 携帯電話アプリにて 1 分間ごとに表示されるパスワードのことです 1 分間に 1 回パスワードが変更となり 第三者へ搾取されることが防げるため 非常に高いセキュリティを保つことが可能です インターネットバンキング利用画面へログイン ( 接続 ) するときに使用いたします お手元に携帯電話をご用意していただき ワンタイムパスワードを申請する手続きを行ってください

More information

Oracle Application Expressの機能の最大活用-インタラクティブ・レポート

Oracle Application Expressの機能の最大活用-インタラクティブ・レポート Oracle Application Express 4.0 を使用した データベース アプリケーションへのセキュリティの追加 Copyright(c) 2011, Oracle. All rights reserved. Copyright(c) 2011, Oracle. All rights reserved. 2 / 30 Oracle Application Express 4.0 を使用した

More information

0 第 4 書データベース操作 i 4.1 データベースへの接続 (1) データベースチェックポイントの追加 データベースチェックポイントを追加します (2)ODBC による接続 ODBC を使用してデータベースへ接続します SQL 文を手作業で指定する場合 最大フェッチ行数を指定する場合はここで最大行数を指定します ii 接続文字列を作成します 作成ボタンクリック > データソース選択 > データベース接続

More information

起動する 起動方法は ご使用の OS により異なります 監視対象となるフォルダーの中にファイルが多数ある場合は 起動に時間がかかります 起動完了までお待ちください (6000 ファイルで約 4 分 ) [ スタート ] メニュー [( すべての ) プログラム ] [I-O DATA] [Sight

起動する 起動方法は ご使用の OS により異なります 監視対象となるフォルダーの中にファイルが多数ある場合は 起動に時間がかかります 起動完了までお待ちください (6000 ファイルで約 4 分 ) [ スタート ] メニュー [( すべての ) プログラム ] [I-O DATA] [Sight 共有フォルダーの更新を監視する フォルダー監視ツール Sight On Sight On は 共有フォルダーを監視するツールです 例えば 複数のパソコンで共通の Excel を作業中に 1 人が更新した場合 他のパソコ ンでポップアップでお知らせするなどの使い方ができます 対応 LAN DISK HDL-H シリーズ HDL-XR シリーズ HDL-XR/2D シリーズ HDL-XR2U シリーズ

More information

ESET NOD32アンチウイルス V4.2 リリースノート

ESET NOD32アンチウイルス V4.2 リリースノート ====================================================================== ESET NOD32 アンチウイルス V4.2 リリースノート キヤノンITソリューションズ株式会社 ====================================================================== はじめにキヤノンITソリューションズ製品をご愛顧いただき誠にありがとうございます

More information

1 Ver デジタル証明書の更新手順 1 S T E P 1 netnaccs 専用デジタル ( クライアント ) 証明書 の更新作業を開始する前に 次の準備を行って下さい (1) お使いになるパソコンのブラウザのバージョンを確認して下さい ( デジタル証明書の取得等は 必ず Inte

1 Ver デジタル証明書の更新手順 1 S T E P 1 netnaccs 専用デジタル ( クライアント ) 証明書 の更新作業を開始する前に 次の準備を行って下さい (1) お使いになるパソコンのブラウザのバージョンを確認して下さい ( デジタル証明書の取得等は 必ず Inte 1 Ver-201401 資料 : デジタル証明書の更新手順 Windows Vista Windows 7 用 1 Ver-201401 デジタル証明書の更新手順 1 S T E P 1 netnaccs 専用デジタル ( クライアント ) 証明書 の更新作業を開始する前に 次の準備を行って下さい (1) お使いになるパソコンのブラウザのバージョンを確認して下さい ( デジタル証明書の取得等は 必ず

More information

第4回

第4回 Excel で度数分布表を作成 表計算ソフトの Microsoft Excel を使って 度数分布表を作成する場合 関数を使わなくても 四則演算(+ */) だけでも作成できます しかし データ数が多い場合に度数を求めたり 度数などの合計を求めるときには 関数を使えばデータを処理しやすく なります 度数分布表の作成で使用する関数 合計は SUM SUM( 合計を計算する ) 書式 :SUM( 数値数値

More information

注意事項 (1)Windows 10 を使用する場合 注意事項 1 注意事項 3 注意事項 4 についてご対応をお願いします (2)Windows 8.1 を使用する場合 注意事項 2 注意事項 3 注意事項 4 についてご対応をお願いします (3)Windows 7 上で Internet Exp

注意事項 (1)Windows 10 を使用する場合 注意事項 1 注意事項 3 注意事項 4 についてご対応をお願いします (2)Windows 8.1 を使用する場合 注意事項 2 注意事項 3 注意事項 4 についてご対応をお願いします (3)Windows 7 上で Internet Exp Windows10 動作保障開始のお知らせ 2016 年 7 月より Windows 10 を新たに動作保証対象といたします ご利用にあたって は以下の点にご注意ください 動作保証環境 (1)OS ブラウザのバージョン対応表 以下枠線部分の OS 及びブラウザが新たに追加される動作保証環境となります OS Windows10 Home/Pro (32bit 版 /64bit 版 )( 2) Windows8.1

More information

分析のステップ Step 1: Y( 目的変数 ) に対する値の順序を確認 Step 2: モデルのあてはめ を実行 適切なモデルの指定 Step 3: オプションを指定し オッズ比とその信頼区間を表示 以下 このステップに沿って JMP の操作をご説明します Step 1: Y( 目的変数 ) の

分析のステップ Step 1: Y( 目的変数 ) に対する値の順序を確認 Step 2: モデルのあてはめ を実行 適切なモデルの指定 Step 3: オプションを指定し オッズ比とその信頼区間を表示 以下 このステップに沿って JMP の操作をご説明します Step 1: Y( 目的変数 ) の JMP によるオッズ比 リスク比 ( ハザード比 ) の算出と注意点 SAS Institute Japan 株式会社 JMP ジャパン事業部 2011 年 10 月改定 1. はじめに 本文書は JMP でロジスティック回帰モデルによるオッズ比 比例ハザードモデルによるリスク比 それぞれに対する信頼区間を求める操作方法と注意点を述べたものです 本文書は JMP 7 以降のバージョンに対応しております

More information

HP USB Port Managerご紹介資料 -シンクライアント

HP USB Port Managerご紹介資料 -シンクライアント HP USB Port Manager ご紹介資料 株式会社日本 HP パーソナルシステムズ事業本部クライアントソリューション本部 2015 年 11 月 ソリューションビジネス部 HP USB Port Manager とは これまで HP シンクライアント用に提供していたツールでは 書き込み 読み込み 無効化の設定はすべての USB ストレージデバイスが対象でした 新しくリリースした HP USB

More information

20101222_Exp操作マニュアル+ユニット解説

20101222_Exp操作マニュアル+ユニット解説 操作マニュアル 15 ページ編集 ユニットの編集 ❶ ユニットの編集 ユニットを編集するには まず❶の 段組み ユニッ ト選択プルダウン からユニットを選択します 編集したいユニットの上にカーソルを持っていくと右 図のようにユニットが灰色になります ここでは 画 像のみ オリジナルサイズ表示 のユニットを選択 しました ❷ の薄い灰色部をクリックすると ❶ の編 ❷ 集画面が開きます ❶ のファイル選択で表示させたい画像ファイルを選

More information

目 次 セットアップ(windows版) 3 ソフトの起動 6 起動 製作開始まで 7 画面名称 9 製作を始める前に 9 フォトブック製作 ページに写真を配置する 10 写真の追加 10 写真の配置 11 12 画像ボックスの移動 12 画像ボックスのサイズ変更 12 フォトブック製作 自動流し込

目 次 セットアップ(windows版) 3 ソフトの起動 6 起動 製作開始まで 7 画面名称 9 製作を始める前に 9 フォトブック製作 ページに写真を配置する 10 写真の追加 10 写真の配置 11 12 画像ボックスの移動 12 画像ボックスのサイズ変更 12 フォトブック製作 自動流し込 PhotoRevo 簡易マニュアル このマニュアルはPhotoRevoの簡易的なマニュアルです セットアップ 発注までを簡単に説明したものです 画面イメージはWindows版のものになります 1 / 24 ページ 目 次 セットアップ(windows版) 3 ソフトの起動 6 起動 製作開始まで 7 画面名称 9 製作を始める前に 9 フォトブック製作 ページに写真を配置する 10 写真の追加 10

More information

McAfee SaaS Protection 統合ガイド Microsoft Office 365 と Exchange Online の保護

McAfee SaaS  Protection 統合ガイド Microsoft Office 365 と Exchange Online の保護 統合ガイド改訂 G McAfee SaaS Email Protection Microsoft Office 365 と Exchange Online の保護 Microsoft Office 365 の設定 このガイドの説明に従って McAfee SaaS Email Protection を使用するように Microsoft Office 365 と Microsoft Exchange Online

More information

インターネットフィルタリング簡単マニュアル

インターネットフィルタリング簡単マニュアル セキュリティ安心 Windows8 版フィルタリングソフト 簡単マニュアル インターネットフィルタリングのインストール インターネットフィルタリングの初期設定 インターネットフィルタリングの使い方 インターネットフィルタリングのWeb 管理 インターネットフィルタリングのアンインストール インターネットフィルタリングの再インストール よくあるご質問 お問い合わせ先 インターネットフィルタリングのインストール

More information

メッシュ農業気象データ利用マニュアル

メッシュ農業気象データ利用マニュアル 大野宏之 メッシュ農業気象データ利用マニュアル 11 図13 取得したデータを MS Excel に読み込んで表示した画面 ブラウザによっては メニュー ファイル から 名前付けて保存 とします 保存の際 ファ イル名の拡張子を変更して AMD_Area3_TMP_mea.nc.csv として保存してください このファイルをエクセルから開き ウインドウ右下の表示倍率スライドバーを左いっぱいに動 かして縮小表示すると南北が逆転した房総半島

More information

Handbook_Studio_ja

Handbook_Studio_ja 2.1. ブック管理画面 Handbook画面の左上にある 管理画面切替えメニュー で表示されている ブック管理 をクリックする と Handbook Studioで作成された ブック ファイルの管理画面に切り替わります ブック管理画面 管理画面切替えメニュー ブック管理画面のメニュー ブックリスト ブック管理画面の説明は 以下のようになります 管理画面切替えメニュー 管理画面の各項目をクリックして

More information

図 2: モバイルサイトで図 1 の画面を閲覧した場合の表示例 図 3: PI ProcessBook 画面をモバイルサイトで閲覧した場合の表示例 モバイルサイト用のホームページには 最近閲覧した画面の一覧表示と検索機能が含まれています ブラウザのサイズが縦 385 ピクセル以下 もしくは横 640

図 2: モバイルサイトで図 1 の画面を閲覧した場合の表示例 図 3: PI ProcessBook 画面をモバイルサイトで閲覧した場合の表示例 モバイルサイト用のホームページには 最近閲覧した画面の一覧表示と検索機能が含まれています ブラウザのサイズが縦 385 ピクセル以下 もしくは横 640 PI Coresight 2014 1. 検索とナビゲーション機能のパフォーマンス向上 PI Coresight 2014 では 検索とナビゲーション機能のパフォーマンスが特に改善されています 以前のバージョンでは検索とナビゲーション機能に PI OLEDB Enterprise を使用していましたが PI Coresight 2014 では PI Web API と PI Index Search

More information

『テクノス』V2プログラムインストール説明書

『テクノス』V2プログラムインストール説明書 土木積算システム テクノス V2 プログラム インストール説明書 ( 第 3 版 ) 目 次 1. テクノス V2 プログラム インストールの概要...3 2. テクノス V2 のプログラム ドライバ インストール...4 3. テクノス V2 の初期起動...10 4. アンインストール...11 5. 補足 ( 動作環境 )...11 2. 1. テクノス V2 プログラム インストールの概要

More information

Rational Roseモデルの移行 マニュアル

Rational Roseモデルの移行 マニュアル Model conversion from Rational Rose by SparxSystems Japan Rational Rose モデルの移行マニュアル (2012/1/12 最終更新 ) 1. はじめに このガイドでは 既に Rational( 現 IBM) Rose ( 以下 Rose と表記します ) で作成された UML モデルを Enterprise Architect で利用するための作業ガイドです

More information

user_manual_20131218-w

user_manual_20131218-w a-blog cms Ver.20131218 1 a-blog cms Ver.20131218 2 a-blog cms Ver.20131218 3 a-blog cms Ver.20131218 4 a-blog cms Ver.20131218 5 a-blog cms Ver.20131218 6 a-blog cms http://a-blog cms /login/ Ver.20131218

More information

000

000 インストールする 前 に インストールが 自 動 で 始 まらない 場 合 インストール 中 またはアンインストール 中 に 下 のような 画 面 が 表 示 された 場 合 ソフトウェアのアップデートについて ソフトウェア最新版について 下記 弊社ホームページよりソフトウェアの最新情報をご確認ください ソフトウェア最新版をホームページよりダウンロードを行い お客様がお使いのソフトウェアを

More information

Microsoft Word - macマニュアル【 】.doc

Microsoft Word - macマニュアル【 】.doc 目次 1. ログイン... 1 2. ログアウト... 3 3. デスクトップ ( 例 :Word Excel 起動中 )... 4 4. Dock( 例 :Word Excel 起動中 )... 5 5. Finder ウィンドウ... 9 6. メニューバー ( 例 :Word 起動中 )... 10 7. 文字の入力 ( 例 :Word で入力 )... 11 8. データの保存 ( 例 :Word

More information

ESET Mobile Security for Android V1.1 セットアップ手順

ESET Mobile Security for Android V1.1 セットアップ手順 ESET Mobile Security for Android V1.1 セットアップ手順 キヤノン IT ソリューションズ株式会社最終更新日 2016/12/08 1 目次 1. はじめに... 3 2. ESET Mobile Security for Android V1.1 のインストール... 4 3. ESET Mobile Security for Android V1.1 のアンインストール...

More information

<30312E D F898AFA93B193FC8EE88F872E786C73>

<30312E D F898AFA93B193FC8EE88F872E786C73> WEB-EDI システム Ver.20130620 1/14 WEB-EDI システム初期セットアップ手順 > 2008/10/20 初稿 2009/8/28 補足追加 2009/9/15 誤字訂正 文言修正 2010/3/12 IE8 用設定に関する補足を追加 2010/9/15 自動構成スクリプトに関する補足を追加 よくあるお問合せ を追加 2010/4/16 セキュリティレベルの変更に補足追加

More information

GALAPAGOS Station ご利用の流れ STEP1 GALAPAGOS Station をインストールする GALAPAGOS Station のインストール手順は以下の通りです シャープの WEB サイト

GALAPAGOS Station ご利用の流れ STEP1 GALAPAGOS Station をインストールする GALAPAGOS Station のインストール手順は以下の通りです シャープの WEB サイト ガラパゴスステーション GALAPAGOS Station の使い方 お持ちのパソコンと HappyTablet を連携させるパソコン向けのアプリケーション GALAPAGOS Station を活用すれば サービスの楽しみ方がさらに広がります GALAPAGOS Station とは GALAPAGOS Station とは ハッピータブレットと併用することで サービスをより便利にお使いいただけるようにな

More information

新システム移行マニュアル

新システム移行マニュアル テレビ松本インターネット 新システム移行マニュアル 目次 1 月 29 日までに行っていただく事項 1. メール転送設定方法について 2 2.WEB ページのメールフォームの確認について 3.WEB ページのアクセスカウンタの確認ついて 2 月 5 日以降に行っていただく事項 4 6 4. 移行対象メールの移動について 7 5. アドレス帳の確認について 8 6 ユーザー専用ページのログイン方法について

More information

導入設定ガイド

導入設定ガイド Big Bang System Corporation ExLook Online 機体認証オプション 管理者マニュアル 第 2 版平成 24 年 2 月 17 日 株式会社ビービーシステム Copyright (c) 2010, Big Bang System Corporation. All rights reserved. 本書に記載された事項で発生したいかなる事態もその責務を負いません また

More information

Microsoft Word - 電子署名利用マニュアル(Microsoft Office 2010)kat

Microsoft Word - 電子署名利用マニュアル(Microsoft Office 2010)kat 電子署名利用マニュアル (Microsoft Office 2010 Word,Excel,PowerPoint) 電子署名 ( デジタル署名 ) を使用すれば ファイルに署名した人物の身元を証明し 電子署名がファイルに適用されてから文書の内容が変更されていないことを確認できます また 結果として否認の防止をすることができます 本マニュアルでは Microsoft Office 2010 における電子署名の利用方法について説明します

More information