DCCHECKBOX nimmt Wert nicht an [ERLEDIGT]

Moderator: Moderatoren

Antworten
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

DCCHECKBOX nimmt Wert nicht an [ERLEDIGT]

Beitrag von Manfred »

Hi Leute,
was mache ich hier falsch?

Code: Alles auswählen

METHOD DialogTagesdienste:erfasseDatum(dDatum)
       LOCAL getlist := {}
       LOCAL GetOptions
       LOCAL lErfolg  := .F.
       LOCAL lSommerfahrplan := .F.
       LOCAL lWinterfahrplan := .F.
       LOCAL nLinks   := 20
       LOCAL nOben    := 20
       LOCAL nPbHoehe := 30
       LOCAL olSommerfahrplan  := NIL
       LOCAL olWinterfahrplan  := NIL

       LOCAL oDatum      := NIL
       LOCAL oDialog     := NIL
       LOCAL oPbAbbruch  := NIL
       LOCAL oPbStart    := NIL
       LOCAL oRahmen     := NIL
       LOCAL oText       := NIL

       MEMVAR oSysPara

       @ 10, 5 DCGROUP oRahmen;
                  SIZE DCGUI_PARENTWIDTH-10,DCGUI_PARENTHEIGHT - 20

       @ nOben,nLinks DCSAY "Datum:";
                     OBJECT oText;
                     PARENT oRahmen;
                       SIZE 70,20
       @ DCGUI_ROW,DCGUI_COL DCGET dDatum;
                              EVAL {|o| o:usevisualstyle := oSysPara:oWsPara:VisualStyl};
                   GETPRESENTATION {{ XBP_PP_DISABLED_FGCLR, GRA_CLR_BLACK }};
                            OBJECT oDatum;
                            PARENT oRahmen;
                              SIZE 100,20;
                           TABSTOP;
                           TOOLTIP "Tagesdatum";
                             VALID {|| ! Empty(dDatum)}
         nOben += ::nAbstand
         @ nOben,nLinks DCSAY "incl.Sommer:";
                       OBJECT oText;
                       PARENT oRahmen;
                         SIZE 70,20
         @ DCGUI_ROW,DCGUI_COL DCCHECKBOX lSommerfahrplan;
                                     EVAL {|o| o:usevisualstyle := oSysPara:oWsPara:VisualStyl};
                                   OBJECT olSommerfahrplan;
                                   PARENT oRahmen;
                                  TABSTOP
         nOben += ::nAbstand
         @ nOben,nLinks DCSAY "incl.Winter:";
                       OBJECT oText;
                       PARENT oRahmen;
                         SIZE 70,20
         @ DCGUI_ROW,DCGUI_COL DCCHECKBOX lWinterfahrplan;
                                     EVAL {|o| o:usevisualstyle := oSysPara:oWsPara:VisualStyl};
                                   OBJECT olWinterfahrplan;
                                   PARENT oRahmen;
                                  TABSTOP
         @ 0,0 DCPUSHBUTTON;
                     ACTION {|| lErfolg := .T.,DC_ReadGuiEvent(DCGUI_EXIT_ABORT,GetList)};
                    CAPTION "Start";
                       EVAL {|| oPbStart:setPos( {10,10} ),;
                                oPbStart:setSize( {oRahmen:currentsize()[1]/4-10,nPbHoehe} );
                            };
                     OBJECT oPbStart;
                     PARENT oRahmen;
                    TABSTOP;
                    TOOLTIP "Start"
         @ 0,0 DCPUSHBUTTON;
                     ACTION {|| DC_ReadGuiEvent(DCGUI_EXIT_ABORT,GetList)};
                  CAPTION "Abbruch";
                     EVAL {|| oPbAbbruch:setPos( {oPbStart:currentpos()[1] + oPbStart:currentsize()[1],10} ),;
                              oPbAbbruch:setSize( {oRahmen:currentsize()[1]/4-10,nPbHoehe} );
                          };
                   OBJECT oPbAbbruch;
                   PARENT oRahmen;
                  TABSTOP;
                  TOOLTIP "Abbruch/Beenden"
         DCGETOPTIONS;
             BORDER XBPDLG_SIZEBORDER;
         CLOSEQUERY MSG {|| IF(oSysPara:oMessage:anzeigen(" Abbruch?",.T.,"N"),.T.,.F.)};
         HILITEGETS GRA_CLR_CYAN;
        NOMAXBUTTON;
        NOMINBUTTON;
              PIXEL;
         SAYOPTIONS XBPSTATIC_TEXT_VCENTER+XBPSTATIC_TEXT_RIGHT;
       TOOLTIPCOLOR GRA_CLR_BLACK, GRA_CLR_YELLOW;
        WINDOWWIDTH 400;
       WINDOWHEIGHT 200

         DCREAD GUI;
            OPTIONS GetOptions;
             PARENT @oDialog;
              TITLE "Datum für Kopie"
         dDatum := CToD(oDatum:buffer)
         ::lSommerfahrplan := lSommerfahrplan <----
         ::lWinterfahrplan := lWinterfahrplan    <----
RETURN lErfolg
lSommerfahrplan und lWinerfahrplan habe am Ende .F. obwohl der Haken gesetzt wurde in der Checkbox. oLSommerfahrplan und olWinterfahrplan haben NIL
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
Beiträge: 9345
Registriert: Do, 22. Sep 2005 23:11
Wohnort: Berlin
Hat sich bedankt: 100 Mal
Danksagung erhalten: 359 Mal
Kontaktdaten:

Re: DCCHECKBOX nimmt Wert nicht an

Beitrag von Tom »

Der Start-Button löst auch EXIT_ABORT aus, wodurch u.U. Eingaben zurückgesetzt werden. Nimm mal EXIT_OK.
Herzlich,
Tom
Benutzeravatar
Manfred
Foren-Administrator
Foren-Administrator
Beiträge: 21165
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel
Hat sich bedankt: 206 Mal
Danksagung erhalten: 67 Mal

Re: DCCHECKBOX nimmt Wert nicht an

Beitrag von Manfred »

Hi Tom,
Danke. So wie es aussieht war es da. Daran hätte ich jetzt überhaupt nicht gedacht. Und schon gar nicht das zu hinterfragen.
Gruß Manfred
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
großer Fan des Xbaseentwicklerwiki https://wiki.xbaseentwickler.de/index.p ... Hauptseite
Doof kann man sein, man muß sich nur zu helfen wissen!!
Antworten