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

次はボタンのの動作を指定します。ボタンには日付と設定があるのですが、日付ボタンは名称が多いので分岐の条件は「btnSet」かそれ以外ということにします。そして、日付ボタンを押したときは、呼び出し元のオブジェクトを引数にしたbtnDay_Click関数に渡して処理をすることにします。

Private Sub dlgCalendarActionListener_actionPerformed(oEvent)

    Select Case oEvent.Source.getModel().Name
        Case "btnSet"
            btnSet_Click
        Case Else
            btnDay_Click(oEvent.Source)
    End Select
End Sub

Private Sub dlgCalendarActionListener_disposing(): End Sub

日付ボタンをクリックした時の処理を示します。

Private Sub btnDay_Click(Button As Object)
    
    Dim i As Integer
    
    i = CInt(Button.getModel.Label)
    If  i < 1 Then Exit Sub
    
    Dim wk As Date
    
    wk = DateSerial(Year(FirstDate) + Int(scbMonth.Value / 12), _
        (scbMonth.Value mod 12) + 1, i)
    SelectedDate = wk
    
    If CalendarType = CALENDARTYPE_SELECT Then
        oDialog.endExecute
        Exit Sub
    End If
    
    mdlHoliday.Change(wk)
    
    If mdlHoliday.IsHoliday(wk) Then
        Button.getModel.TextColor = RGB(255,0,0)
    Else
        Button.getModel.TextColor = RGB(0,0,0)
    End If
    
End Sub

まず、日付ボタンのラベルから日付を取得し、DateSerial関数で日時の情報を生成します。
ここで、選択用に呼び出した時は、これでダイアログを閉じます。休日設定用に呼び出した時は、選択した日付の休日と平日を切り替えて、切り替え後に休日だったら赤表示で平日だったら黒表示にします。

また、設定ボタンを押した後はダイアログを閉じるだけなので、以下のコードとなります。

Private Sub btnSet_Click
    oDialog.endExecute
End Sub

以上でカレンダーダイアログは完成ですが、次回はこれを用いて工程データ編集ダイアログを改造を紹介します。

スポンサーサイト

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

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