みなさん、こんにちは!
このブログは、「PowerBuilder ってなに?」、「PowerBuilder って何ができるの?」という疑問に、IT 用語の解説もしつつ、簡単に分かりやすくお答えすることをモットーにしています。
気になる方はぜひ続きを見てみてくださいね。
ねこぴ
PowerBuilder レクチャーのキャラクター。
(猫に見えるが)PowerBuilder の先生。
ゆる~く楽しく!がモットー。
ちまき
PowerBuilder をこれから学びたい開発初心者。
ITの知識はちょっとあるようなないようなレベル。
YouTube では、この PowerBuilder 入門シリーズの動画版を公開しています!
動画版では、実際の PowerBuilder の画面操作をしているところを確認しながら進められるので、より理解力が深まります。
あわせてぜひご視聴ください!
あちちち!
紅茶っておいしいのに猫舌が邪魔するにゃ。猫だけに。
ねこぴ先生、一人ツッコミ独り言を言っているところ申し訳ないのですがお邪魔しますね。
なんてタイミングで入ってくるにゃ!
てか突っ込んでほしかったにゃ。
こんな急なボケに対応できるほど私はセンスないのですよ!
前回は 住所録アプリの全体像を説明 の回でしたよね。
そうだにゃ。
今回は「行追加」について解説していくにゃ。
新しいメソッドも登場するので心構えしておくにゃ。
前回のブログは住所録アプリの概要を解説しましたね^^
今回は大きなテーマである「更新」の前にリストの行追加について説明していきます。
分かりやすく解説していこうと思いますのでぜひ見ていってください(^^)
さて、テーブル内には 60 行分の個人データが登録されています。
61 行目に新しい行を追加するにはどういったメソッドを使用するのかコードを見ていきましょう(`・ω・´)ゞ
「w_adr_app」のウィンドウオブジェクトを開き、「行追加」のコマンドボタンを右クリックでスクリプトを開きます。
以下のようにスクリプトを記述しました。
あ、同じアプリを作成していればぜひ書いてみてください。
まずはどんな処理なのかわかるように、コメントで「/*新規行追加*/」と記述しています。
そして変数を宣言します。
さあ、やってきました!いよいよ新規行追加のメソッドです。
新規行を追加するには InsertRow メソッド を使用します。
InsertRow メソッドとは?
新規行を追加してくれるメソッドのこと。
書き方 : コントロール名.InsertRow(row)
row = 挿入する行番号を指定する。(指定行の前に挿入されるため省略は不可)
コード内では dw_list.InsertRow(0) とあります。
dw_list はデータウィンドウコントロールを指していて、ウィンドウの上に配置したデータベース内のデータを表示するデータウィンドウ部分ですね。
そして InsertRow(0) は行を追加するメソッドですが、 0 というのは行の最終行に新規行を追加するという意味になります。
InsertRow の戻り値は追加 (挿入) された行の番号になります。
続いてスクロールと現行行の設定です。
まずスクロールですが、dw_list.ScrollToRow(li_row) で設定されています。
この章はメソッド祭りですね\(^ω^\)ワッショイ!ワッショイ!
では ScrollToRow メソッドを見ていきましょう。
ScrollToRow メソッドとは?
追加した行にスクロールするメソッドのこと。
書き方 : コントロール名.ScrollToRow(row)
戻り値は正常時にスクロール先の行番号、エラー時に -1 を返す。row は省略不可。
つまり移動させたい行へスクロールしてくれるメソッドを発動させるわけですね。
li_row_cnt の変数にはカウントした行数が入るはずですので、その部分までスクロールします。
そして、 dw_list.SetRow(li_row) ですがこれは現行行を設定するメソッドです。
現行行とは、データウィンドウ上で保持している行番号を入手するためのものです。
SetRow メソッドとは?
現行行を設定するメソッドのこと。
書き方 : コントロール名.SetRow(row)
戻り値は正常時に 1、エラー時に -1 を返す。row は省略不可。
最後に SelectRow メソッドです!
これは指定の行をハイライト表示するメソッドになります。
SelectRow メソッドとは?
指定の行をハイライト表示するメソッドのこと。
書き方 : コントロール名.SelectRow(row, select)
戻り値は正常時に 1、エラー時に -1 を返す。row と select はそれぞれ省略不可。
row はハイライト表示をする行数を指します。
0 を指定すると、すべての行を選択するという意味になります。
また、select に関しては行を選択するか選択を解除するかを決めることができます。
ではアプリを実行してみましょう。
行追加のボタンを押してみます。(どきどき)
・・・
行が追加されましたね!(^O^)/ヤッター!
つまり「行追加」でやっていることは・・・
新規行を追加して、行数を数えた後ハイライトする行を取得しているということなんですね!
今回は たくさんメソッドも出てきましたね。
そうにゃね。次回は「行削除」の説明に入るにゃ。
・新規行の追加は InsertRow
・スクロールは ScrollToRow
・現行行の設定は SetRow
・指定の行をハイライト表示するには SelectRow を使用してみて!
こちらのブログシリーズ次回の記事はこちら↓↓