Autor Beitrag
cartridge
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 209

Win XP
D4 Prof,D6 Prof
BeitragVerfasst: So 21.08.05 23:07 
Hallo Leute!

Ich hatte eigentlich vor, ein Datum bei Druck auf die rechte Maustaste markieren zu lassen. Dazu bietet sich eigentlich der sog. Hittest an. Leider ist in Delphi dieser nicth ausgewiesen. Beim mehr oder minder zufälligen Suchen habe ich in der Unit CommCtrl eine Methode gefunden: MonthCal_HittestInfo.

Leider ist diese Methode nur aus der Windows. API entnommen und in der Hilfe nicht dokumentiert. Ich habe leider das Problem, dass ich aus dem Ergebnis- Record MCMHITTESTINFO keine verwertbaren Daten heraus bekomme, obwohl relativ klar ist, um welche Werte es sich handelt. So gelingt es mir z.B. nicht, ein verwertbares Datum aus st {Systemtime} heraus zu holen, und dies nciht, weil ich das Datum nicht umzuwandeln weiß, sondern weil die Werte für das Datum nicht gültig sind, weil zu hoch!

Kann mir jemand einen Tipp geben (und wenn es nur ein Auszug aus einer Hilfe- Datei ist)???

Gruß Ingo
Sprint
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 849



BeitragVerfasst: So 21.08.05 23:35 
ausblenden Delphi-Quelltext
1:
2:
3:
4:
5:
6:
7:
8:
9:
10:
11:
12:
13:
procedure TForm1.MonthCalendar1ContextPopup(Sender: TObject; MousePos: TPoint; var Handled: Boolean);
var
  Info: TMCHitTestInfo;
begin

  Handled := True;
  FillChar(Info, SizeOf(TMCHitTestInfo), 0);
  Info.cbSize := SizeOf(TMCHitTestInfo);
  Info.pt := MousePos;
  if SendMessage(TMonthCalendar(Sender).Handle, MCM_HITTEST, 0, LPARAM(@Info)) = MCHT_CALENDARDATE then
    ShowMessage(DateToStr(SystemTimeToDateTime(Info.st)));

end;

_________________
Ciao, Sprint.
cartridge Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 209

Win XP
D4 Prof,D6 Prof
BeitragVerfasst: Mo 22.08.05 20:12 
Supi! Heißen Dank, Sprint! *freu*

Aber: Woher hast Du das? Die OH zu Delphi6, bzw. zu Windows, die mit Delphi6 mitgeliefert wird, schweigt sich da total aus!!!

Wäre nett, wenn Du mir diese Frage noch beantworten könntest!

Gruß Ingo
Sprint
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 849



BeitragVerfasst: Di 23.08.05 02:14 
Aus dem PSDK. Kannst du hier downloaden.

_________________
Ciao, Sprint.
cartridge Threadstarter
ontopic starontopic starontopic starontopic starontopic starontopic starontopic starhalf ontopic star
Beiträge: 209

Win XP
D4 Prof,D6 Prof
BeitragVerfasst: Di 23.08.05 06:27 
Aha! Habe eben geklickt- hat nur Fragezeichen in meinem Gesicht gebracht, aber ich habe jetzt auch keine Zeit mehr. Jedenfalls heißen Dank nochmal; funzt wie ne eins!!!

Gruß Ingo