SysDateTimePick32: Uhrzeit auf 00:00:00 setzen?

Anfängerfragen zum Programmieren mit PureBasic.
Häns
Beiträge: 47
Registriert: 27.10.2007 14:30
Wohnort: Kölle

SysDateTimePick32: Uhrzeit auf 00:00:00 setzen?

Beitrag von Häns »

Hallo Folks,

für die Anzeige von Datum und Zeit mit Hilfe von SysDateTimePick32 werden die aktuellen Zeiten angegeben. Als Beispiel:

Code: Alles auswählen


Structure INITCOMMONCONTROLSEX
  dwSize.l
  dwICC.l
EndStructure

InitICC.INITCOMMONCONTROLSEX
InitICC\dwSize = SizeOf(INITCOMMONCONTROLSEX) 
InitICC\dwICC = #ICC_DATE_CLASSES

InitCommonControlsEx_(InitICC)
OpenWindow(0,200,200,200,200,#PB_Window_SystemMenu,"test")
If CreateGadgetList(WindowID())
picker1=CreateWindowEx_(0,"SysDateTimePick32","",#WS_CHILD|#WS_VISIBLE|12+2,10,10,100,25,WindowID(),0,GetModuleHandle_(0),0)
  picker2=CreateWindowEx_(0,"SysDateTimePick32","",#WS_CHILD|#WS_VISIBLE|12,10,40,100,25,WindowID(),0,GetModuleHandle_(0),0)
EndIf
Repeat
  EventID=WaitWindowEvent()
Until EventID=#PB_EventCloseWindow

CloseWindow(0)

(aus http://www.purebasic.fr/german/archive/ ... ac05#39593).

Da in meinem Programm der Anwender eine Zeit setzen kann, soll beim Start nicht die aktuelle Zeit, sondern nur "00:00:00" dargestellt werden.

Wie kann ich sie setzen?

Dankesgruß, Häns


[Edit]

Mmmh, ok, habe mal im englischen Board etwas gefunden und ein bisschen damit herumgespielt. Dabei ist das herausgekommen:

Code: Alles auswählen

OpenWindow(0,100,200,400,200,"test",#PB_Window_SystemMenu)
CreateGadgetList(WindowID(0))

DateGadget(2,10,80,100,20,"",0 ,#DTS_TIMEFORMAT) 

Repeat : Until WaitWindowEvent()=#PB_Event_CloseWindow 

Wenn ich in DateGadget den Parameter "Datum" ändere in:

Code: Alles auswählen

DateGadget(1,10,60,100,20,"",#PB_Date_CheckBox ,#DTS_TIMEFORMAT) 
dann bekomme ich das heraus, was ich wollte. Fragt mich jetzt bitte nicht, warum es so geht, es ist bestimmt "unsauber", aber es funzt.

Vielleicht kann mir einer das erklären, denn zwischen der Option Date und CheckBox kann ich mir keinen Reim daraus machen...


Häns
PB 5.6
Windows 7 Professional
Benutzeravatar
hjbremer
Beiträge: 822
Registriert: 27.02.2006 22:30
Computerausstattung: von gestern
Wohnort: Neumünster

Beitrag von hjbremer »

in der Hilfe steht:

Mit dem optionalen 'Datum' Parameter können Sie das anzuzeigende Datum auf jedes Datum Ihrer Wahl einstellen. Ohne diesen Parameter oder die Angabe einer 0 wird das aktuelle Datum verwendet.

es fehlt allerdings der Hinweis: bei einem falschen Datum ist die Anzeige 000000
du kannst also auch als Parameter eine 1 angeben
Purebasic 5.70 x86 5.72 X 64 - Windows 10

Der Computer hat dem menschlichen Gehirn gegenüber nur einen Vorteil: Er wird benutzt
grüße hjbremer
Häns
Beiträge: 47
Registriert: 27.10.2007 14:30
Wohnort: Kölle

Beitrag von Häns »

:allright: @hjbremer:

Ja, das dachte ich mir schon, ein falscher Parameter kann manchmal Wunder wirken... :wink:

Häns
PB 5.6
Windows 7 Professional
Antworten