Deutsch
Forum

DateEdit - 2

 

Rainer
Hoefs
Hallo zusammen,
brauche mal wieder Eure Hilfe, da ich nicht mehr weiter weiß.

In einem Programm stehen 2 DateEdits nebeneinander. Nach Auswahl des Datums in DateEdit1 soll das gleiche Datum (später 1 Tag plus) eingestellt werden.

Allerdings reagiert das IF CLICKED DateEdit1% nicht um den entsprechenden Befehl auszuführen.

Keine Ahnung warum.

Für jede Hilfe dankbar.

Hier der Code:
Declare dateedit1%, dateedit2%
Def GetStockObject(1) !"GDI32","GetStockObject"
Def GetSysColor(1) !"USER32","GetSysColor"
Def GetParent(1) !"USER32","GetParent"
Def &COLOR_BTNFACE $F
Def &DEFAULT_GUI_FONT $11

Proc CreateElements

    WindowStyle 26 | 512 | 2048
    WindowTitle "Arbeitsfenster"
    Window 280, 0 - 318, 188
    Cls GetSysColor(&COLOR_BTNFACE)
    SetDialogFont GetStockObject(&DEFAULT_GUI_FONT)
    dateedit1% = Create("DateEdit", %hwnd, Date$(0), 24, 32, 120, 24)
    dateedit2% = Create("DateEdit", %hwnd, Date$(0), 160, 32, 120, 24)

EndProc

Proc MainLoop

    UserMessages 16
    ShowWindow(%hwnd, 1)

    While 1

        WaitInput
        Case %umessage = 16 : BREAK

        If Clicked(dateedit1%)'#window

            SetText dateedit2%,GetText$(dateedit1%)

        ElseIf Clicked(dateedit2%)'#window

            Print GetText$(dateedit2%)+ "Von DateEdit1% übernommen!"

        EndIf

    EndWhile

EndProc

Proc Main

    CreateElements
    MainLoop

EndProc

Main
End
 
13.06.2016  
 




H.Brill
Das ist das Problem mit den zusammengesetzten
Controls, wie etwa das SpinEdit auch.

Vielleicht hilft dir das hier weiter :
 $H Windows.ph
 $H Messages.ph
 $H commctrl.ph
Declare OldTest&,ende%
Struct POINT = \
x&, \
y&
Struct SYSTEMTIME = \
wYear%, \
wMonth%, \
wDayOfWeek%, \
wDay%, \
wHour%, \
wMinute%, \
wSecond%, \
wMilliseconds%
Struct MCHITTESTINFO = \
cbSize&, \
pt!POINT, \
uHit&, \
st!SYSTEMTIME

Proc Get_MonthCalHit

    Declare DATA#, HIT%
    Dim DATA#,MCHITTESTINFO
    DATA#.cbSize& = SizeOf(DATA#)
    DATA#.pt!x& = %MouseX - 500
    DATA#.pt!y& = %MouseY - 150
    Var QT% = SendMessage(KAL1&,$100E,0,DATA#)' $100E = $1000 + 14 = HITTEST
    Var TEXT$ = str$(DATA#.st!wDay%)+"."+str$(DATA#.st!wMonth%)+"."+str$(DATA#.st!wYear%)
    Messagebox(TEXT$,"HITFLAG "+Str$(QT%),$40000)
    Dispose DATA#
    RETURN QT%

EndProc

WINDOW 0,0 - 800,600
Var KAL1& = Control("SysMonthCal32", "Kalender", 1342177280, 500, 150, 180, 406, %HWND, 0, %hInstance, 0)

WhileNot Ende%

    Waitinput

    If %Key = 2

        Ende% = 1

    Else

        Get_MonthCalHit

    EndIf

EndWhile

 
Benutze XPROFAN X3 + FREEPROFAN
Wir sind die XProfaner.
Sie werden von uns assimiliert.
Widerstand ist zwecklos!
Wir werden alle ihre Funktionen und Algorithmen den unseren hinzufügen.

Was die Borg können, können wir schon lange.
14.06.2016  
 




Rainer
Hoefs
Hallo H. Brill,

vielen Dank für deine Hilfe.

Leider ist es für ein mit Create("DateEdit",.....) control nicht die Lösung.

Natürlich reagiert dieses Beispiel ebenso auf ein DateEdit, aber leider wird das Control weder zur Datumsauswahl aufgeklappt, noch wird (logischerweise) ein Datum übergeben, weil man gar keines auswählen kann. Beim Anklicken kommt sofort die Messagebox und vorbei ist es.

Für einen so großen Kalender, ganz aufgeklappter Monat oder 2 wie in Deinem Beispiel, ist in dem Dialog kein Platz.

Trotzdem dankeschön.

Rainer
 
14.06.2016  
 



Antworten


Thementitel, max. 100 Zeichen.
 

Systemprofile:

Kein Systemprofil angelegt. [anlegen]

XProfan:

 Beitrag  Schrift  Smilies  ▼ 

Bitte anmelden um einen Beitrag zu verfassen.
 

Themenoptionen

3.654 Betrachtungen

Unbenanntvor 0 min.
iF31.10.2020
Rainer Hoefs04.05.2019
Georg Teles26.01.2019
rquindt16.03.2018
Mehr...

Themeninformationen

Dieses Thema hat 2 Teilnehmer:

Rainer Hoefs (2x)
H.Brill (1x)


Admins  |  AGB  |  Anwendungen  |  Autoren  |  Chat  |  Datenschutz  |  Download  |  Eingangshalle  |  Hilfe  |  Händlerportal  |  Impressum  |  Mart  |  Schnittstellen  |  SDK  |  Services  |  Spiele  |  Suche  |  Support

Ein Projekt aller XProfaner, die es gibt!


Mein XProfan
Private Nachrichten
Eigenes Ablageforum
Themen-Merkliste
Eigene Beiträge
Eigene Themen
Zwischenablage
Abmelden
 Deutsch English Français Español Italia
Übersetzungen

Datenschutz


Wir verwenden Cookies nur als Session-Cookies wegen der technischen Notwendigkeit und bei uns gibt es keine Cookies von Drittanbietern.

Wenn du hier auf unsere Webseite klickst oder navigierst, stimmst du unserer Erfassung von Informationen in unseren Cookies auf XProfan.Net zu.

Weitere Informationen zu unseren Cookies und dazu, wie du die Kontrolle darüber behältst, findest du in unserer nachfolgenden Datenschutzerklärung.


einverstandenDatenschutzerklärung
Ich möchte keinen Cookie