掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
ピンポ〜ン、明けおめ…(MonthCalendarExコンポ) (ID:33002)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
>これってinteger にして1,2,4,8,16,32とかの数字に割り当てて >種類を12種類位にして >休日でしかもマーク日とか休日のデート日とか休日の誕生日の >とか複合でデータを持てる様にできませんか。 >表示は今までの様に3種類のマークのみにするか。 真琴:「ハルコさん、こんなコトするにしても、その値を入力するのが難しいンじゃない?」 春子:「それは、"日"の部分をクリックした時に ComboBox出して選択すればイイと思うけど」 真琴:「でも、それはコンポに組み込まないとダメでしょ?」 春子:「コンポのソースを弄らなくても、一応は出来るよ、マコト、こんなカンジで…」 type TMonthCalendarEx = class(MonthCalendarEx.TMonthCalendarEx) private FStateEx: WORD; procedure WmLButtonDown(var msg: TWMMouse); message WM_LBUTTONDOWN; procedure ComboCloseUp(Sender: TObject); end; type TForm1 = class(TForm) MonthCalendarEx1: TMonthCalendarEx; .......... var StateExCombo: TComboBox; procedure TMonthCalendarEx.WmLButtonDown(var msg: TWMMouse); var Offset: Integer; p: TPoint; function RectOfDays: TRect; begin if ShowTitle then Result.Top := 3 * CellHeight else Result.Top := CellHeight; Result.Bottom := Result.Top + 6 * CellHeight; if ShowWeekNumbers then Result.Left := CellWidth + 5 else Result.Left := 5; Result.Right := Width - 5; end; begin if Assigned(StateExCombo) then exit; inherited; p.X := Msg.XPos; p.Y := Msg.YPos; if (GetKeyState(VK_SHIFT) < 0)and(PtInRect(RectOfDays, p)) then begin StateExCombo := TComboBox.Create(Self); with StateExCombo do begin Parent := Self; Left := Msg.XPos - 40; Top := Msg.YPos + 8; Width := 90; if Left < 1 then Left := 1; Offset := Left + Width - Self.Width; if Left+Width > Self.Width then Left := Left - Offset; // Style := csDropDownList; OnCloseUp := ComboCloseUp; Text := 'StateEx入力'; Items.Add('誕生日'); Items.Add('〆切日'); Items.Add('デート日'); Items.Add('………'); end; end; end; procedure TMonthCalendarEx.ComboCloseUp(Sender: TObject); begin FStateEx := 1 shl (StateExCombo.ItemIndex); //if IsMarkDay(EncodeDate(Year, Month, SelectDay)) then // MarkDays[{クリックした日のIndex}].WeekNum := FStateEx; Form1.Caption := Format('StateEx= %d', [FStateEx]); // 確認 StateExCombo.Free; StateExCombo := nil; end; 真琴:「でも、これだとマーク日でないと、このFStateExの値を保存できないよね?」 春子:「マーク日以外でも保存するには、質問した人がもう少し詳しい仕様とかをハッキリさせてくれないとダメかな…」 真琴:「仕様がハッキリすれば、これをコンポに組み込むようにした方がイイんじゃない?」 春子:「じゃあ、仕様が分かったら、アタシがコンポ作者にテレパシー送ってみようか?」 真琴:「えっ? テレパシーって、ハルコさん、そんなコトできるの?」 春子:「冗談よ^^、マコト、そんな能力あるワケないでしょ?」 真琴:「なぁんだ、でも別の冗談を去年ハルコさんから聞いたような…」 春子:「ン? どんな冗談?」
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.