OpenOffice.org Basicでガントチャート
OpenOffice.org Basicを使ってガントチャート作成用マクロ ガントチャートforOOoを開発する手順を紹介していきます。
スポンサーサイト
上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。
カレンダーダイアログ その3

次はスクロールバーの動作を指定します。スクロールバーを動作させるとAdjustmentListenerが呼び出されるので、呼び出し元の名前を判別して処理を切り分けるコードを書きます。ただし、ここではスクロールバーが一つしか無いのでちょっと寂しいですが...

Private Sub dlgCalendarAdjustmentListener_adjustmentValueChanged(oEvent)
    Select Case oEvent.Source.getModel().Name
        Case "scbMonth"
            scbMonth_Changed
        Case Else
        
    End Select
End Sub
 
Private Sub dlgCalendarAdjustmentListener_disposing: End Sub

スクロールバー用のscbMonth_Change関数を書きます。

Private Sub scbMonth_Changed
    getMonth(scbMonth.Value)
End Sub
 
Private Sub getMonth(Value As Integer)
    
    Dim y As Integer
    Dim m As Integer
    
    y = Int(Value / 12) + Year(FirstDate)
    m = (Value mod 12) + 1
    
    lblMonth.Text = y & "/" & m
    
    setDays(y,m)
    
End Sub

getMonth関数はスクロールバーの値から年月を計算して、日付ボタンの表示を更新します。
ここで、modは余りの計算を意味します。スクロールバーの値を12で割って整数にすると年数が取得できるので、これに工程で扱う最初の日付であるFirstDateの年と足します。次に値を12で割った余りから月が取得できます。
こうして取得した年月を前述したsetDays関数に渡して、日付表示を更新します。

スポンサーサイト

テーマ:OpenOffice.org - ジャンル:コンピュータ

コメント
この記事へのコメント
コメントを投稿する
URL:
Comment:
Pass:
秘密: 管理者にだけ表示を許可する
 
トラックバック
この記事のトラックバックURL
http://shinob.blog42.fc2.com/tb.php/77-c075017e
この記事にトラックバックする(FC2ブログユーザー)
この記事へのトラックバック
COPYRIGHT(C) 2004 POWERD BY FC2 ALLRIGHT RESERVED.
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。