Focuswechsel übereinanderliegende Dialoge [ERLEDIGT]

Moderator: Moderatoren

Focuswechsel übereinanderliegende Dialoge [ERLEDIGT]

Beitragvon Manfred » Di, 17. Mai 2016 8:08

ich habe ein Problem wenn ich mehrere Dialoge übereinander öffne, dass es dann passieren kann, dass nicht jeder Dialog wieder in den Vordergrund geholt werden kann. Sobald ich es anklicke und wieder loslasse, verschwindet es wieder unter den anderen Dialogen. Die Routine ist immer die gleiche und sollte deshalb m.E. jeden Dialog gleich behandeln. Selbst wenn ich in der Menueleiste in der Cascadenauswahl einen Dialog anklicke, läßt er sich auch nicht auf Dauer in den Vordergrund locken. Wo liegt mein Denkfehler?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Martin Altmann » Di, 17. Mai 2016 8:09

Hast Du einen als modal definiert?
Oder vielleicht nicht die :drawingarea als Parent?

Viele Grüße,
Martin
Benutzeravatar
Martin Altmann
Foren-Administrator
Foren-Administrator
 
Beiträge: 12687
Registriert: Fr, 23. Sep 2005 3:58
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 8:18

keines Modal und überall das Hauptfenster als Drawing Area, damit die Dialoge nicht aus dem Hauptbildschirm verschoben werden können.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon brandelh » Di, 17. Mai 2016 8:25

Wenn du eine MsgBox() öffnest, wird automatisch auf den Dialog geschaltet, der mit SetAppWindow() als Standard definiert wurde.

Bei anderen Dialogen bin ich mir nicht sicher, aber vermutlich ebenso.

Frage sind alle gleichberechtigt ?
Also keiner mit AllwaysOntop ?

Du könntest bei gleichberechtigten Fenstern bestimmen (bei close oder hide oder lost focus), wer als nächstes aktiv werden soll.
Das würde aber nicht dem Windowsstandard entsprechen. Eigentlich solltest du vor dem Aufruf von anderen Fenstern das aktive
(zu dem wieder zurückgesprungen werden soll) mit SetAppWindow() als Hauptfenster markieren, eventuell hast du das aber für ein anderes vorgesehen.

Hier mal ein Beispiel meiner MyMsgBox() Funktion, die den oOwner übergibt und Confirmbox verwendet.
Diese Systemmeldungen zeigen nach dem Schließen immer den oOwner an.

Code: Alles auswählen
*-------------------------------------------------------------
Function MyMsgBox(uText,cTitel,oOwner,nStyle)
   local cText,x,xMax
   DEFAULT nStyle TO XBPMB_WARNING + XBPMB_MOVEABLE
   // XBPMB_QUESTION       Fragezeichen
   // XBPMB_WARNING        Warnung        -> Standard MSGBOX()
   // XBPMB_INFORMATION    Information
   // XBPMB_CRITICAL       Kritische Situation

   // XBPMB_APPMODAL  Confirmbox ist modal in Bezug auf die Xbase++ Anwendung
   // XBPMB_SYSMODAL  Confirmbox ist systemweit modal
   // XBPMB_MOVEABLE  Confirmbox kann verschoben werden

   do case
      case valtype(uText) = "A"                     // reiner Text oder nur debugging
           cText := Var2Char(uText[1])
           xMax  := len(uText)
           for x := 2 to xMax
               cText += chr(13) + Var2Char(uText[x])
           next
      case valtype(uText) = "C"
           cText := uText
      case valtype(uText) = "N"
           cText := ntrim(uText)
      case valtype(uText) = "D"
           cText := ctod(uText)
      otherwise
           cText := "Parameterfehler bei MyMsgBox: "+valtype(uText)+;
                    " statt C, N, D oder A"+chr(13)+;
                    "Bitte diesen Fehler melden."
   endcase
   ConfirmBox(oOwner,cText,cTitel,XBPMB_OK,nStyle)
return NIL
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13195
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 8:30

sie sind alle gleichberechtigt. Was ich aber gerade festgestellt habe ist, wenn ich mehrere Dialoge übereinander aufhabe und dazwischen wechsel, dann kann ich z.B. nicht mehr über das kreuz oben rechts schließen. Nach mehreren Versuchen hin und her, klappt es dann. Dann schließen sich aber die anderen Dialoge, die vorher geschlossen werden sollten auch alle direkt. Alles recht merkwürdig. Ich prüfe gerade, ob ich da irgendeine Regelmäßigkeit entdecken kann, oder ein System.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon brandelh » Di, 17. Mai 2016 8:35

wir sind wieder im eXpress Forum hatte ich übersehen ...

Normalerweise schaltet ein Fenster seinen Owner wieder in den Vordergrund, wenn es geschlossen wird.

Damit ein Fenster auf das X oben reagiert, muss es auf den close Event reagieren (close Codeblock), hast du das eventuell bei einigen vergessen ?
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13195
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 8:39

es sind alles Schablonen, die ich dann nur erweitere. Aber wie ich auch gerade feststellen mußte, sobald ich eines von den Dialogen in den Vordergrund hole,l bzw. zwischen den Dialogen wechsel und dann auf das Kreuz klicke, sind sie nicht mehr zu schließen und auch nicht mehr vernünftig in den Vordergrund zu holen. Beim Anklicken sind sie da und sobald ich die Maus loslasse, werden sie wieder überdeckt. Irgendwas läuft da schief, bzw. habe ich falsch gemacht. Aber wie immer die Frage: Was?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 8:42

Hallo, Manfred.

Du hast "gleichberechtigte" Dialoge, die nicht modal sind. Ich nehme an, dass es z.B. einen Dialog gibt, in dem verschiedene Aktivitäten ausgelöst werden können. Jede davon öffnet einen Dialog, der eben nicht modal ist. Das Problem: Du befindest Dich innerhalb einer Linearität. Es kann innerhalb des Codes nur eine Eventschleife geben, die gerade reagiert - oder eben nicht. In diesem Zusammenhang stellt sich dann auch die Frage, wie der auslösende Dialog (re)agieren soll.

Eigentlich macht man das so:

1. Die "unabhängigen" Dialoge laufen in eigenen Threads. Allerdings verlieren sie dadurch auch die Anbindung an den aufrufenden Dialog - es ist nicht mehr sichergestellt, dass sich beides auf die gleichen Daten bezieht.

2. Die aufgerufenen Dialoge sind nicht unabhängig, sondern modal. Der Fokus der Anwendung geht auf sie über, und sie verlieren ihn erst wieder, wenn man die Dialoge beendet. Dann kann es jeweils immer nur einen davon geben; alles andere im gleichen Thread ist stillgelegt. So arbeitet man, wenn man sich z.B. in einer Kundenverwaltung befindet und etwa Kontaktdaten bearbeitet.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 8:46

Hi Tom,

so ist alles aufgebaut.

Code: Alles auswählen
//------------------------------------------------------------------------------
          DCGETOPTIONS;
                BORDER XBPDLG_SIZEBORDER;
                  BUSY "Feiertagverwaltung wird gestartet, Daten werden geladen";
             COLORGETS {{ GRA_CLR_BLACK, GRA_CLR_CYAN },{ GRA_CLR_BLACK, GRA_CLR_WHITE }};
                  EVAL {|o| SetAppWindow(o) };                                  /* muß hier stehen für das Cascading*/
           NOESCAPEKEY;
           NOMAXBUTTON;
           NOMINBUTTON;
                 PIXEL;
            SAYOPTIONS XBPSTATIC_TEXT_VCENTER+XBPSTATIC_TEXT_RIGHT;
          TOOLTIPCOLOR GRA_CLR_BLACK, GRA_CLR_YELLOW;
           WINDOWWIDTH oDialogZusatz:nFensterBreite;
          WINDOWHEIGHT oDialogZusatz:nFensterHoehe

          DCREAD GUI;
           APPWINDOW oSysPara:oHauptDialog:drawingArea;
                EVAL {|| oSysPara:erzeugeHilfe(oDialog,"Feiertage.htm"),;
                         oDialogZusatz:oFeiertag:schalteEditControls(.F.),;
                         oDialogZusatz:oPbSpeichern:cargo[3] := "AUS",;
                         oDialogZusatz:oPbAbbruch:cargo[3]   := "AUS",;
                         SetAppFocus(oDialogZusatz:oBrowse);
                     };
             OPTIONS GetOptions;
              PARENT @oDialog;
               TITLE "Feiertageverwaltung " + oDialogZusatz:cVersion
           RETURN
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 8:49

Genau. Das ist nicht modal. Sollte es aber vermutlich sein.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 9:11

soll ich denn dann ein MODAL einfügen? Das habe ich mal gemacht, jetzt klappt gar nichts mehr.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 9:32

eigentlich sollte es so klappen, wie die Demo, die Roger beigefügt hat. Alles kann man parallel öffnen und immer wieder anklicken.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Rudolf » Di, 17. Mai 2016 9:36

Hallo Manfred,
schau Dir die READGUI Optionen OWNER und APPWINDOW an. Bei APPWINDOW kann der Child Dialog nur innerhalb des Hauptfensters bewegt werden, gleich wie GETOPTION LOCKWINDOWTOOWNER.
Momentan hab ich ein Problem mit OWNER, wenn ich im Testprogramm den Child Dialog aufmache und dann zurück ins Hauptfenster clicke und wieder zurück ins Child Fenster, bleibt der Eingabefocus beim Hauptfenster. Erst wenn man ausserhalb des Dialogs z.B. den Desktop anclickt, funktioniert es wieder normal. ALWAYSONTOP funktioniert im Testprogramm auch nicht, keine Ahnung wieso.
Habe es Roger bereits gepostet.
Grüße
Rudolf

Code: Alles auswählen
#include "dcdialog.ch"

* ------------

PROC appsys ; return

* ------------

Procedure Main()
******************************************************************
LOCAL GetList[0], GetOptions, oMenuBar, oMenuFile, oDlg ,nVar := 0
local aData := {},oBrowse1
aadd(aData,{1,"Col1","Col2","Col2"})
aadd(aData,{2,"Col1","Col2","Col2"})
aadd(aData,{3,"Col1","Col2","Col2"})

DCMENUBAR oMenuBar

DCSUBMENU oMenuFile PROMPT 'Menue' PARENT oMenuBar
DCMENUITEM 'Child Window with OWNER'  PARENT oMenuFile ACTION {|| Win(1,oDlg) }
DCMENUITEM 'Child Window with APPWINDOW' PARENT oMenuFile ACTION {|| Win(2,oDlg) }
DCMENUITEM 'Child Window MODAL' PARENT oMenuFile ACTION {|| Win3(3,oDlg) }
DCMENUITEM 'Child Window ALWAYSONTOP' PARENT oMenuFile ACTION {|| Win(4,oDlg) }
DCMENUITEM 'Exit' PARENT oMenuFile ACTION {|| PostAppEvent( xbeP_Quit ) }


@ 1,1 DcSay 'This is the main Window' SAYFONT '9.Arial Bold' SAYSIZE 40,1
@ 2,1 DcSay 'Get' get nVar pict "999" saysize 0
@ 3,1 DCBROWSE oBrowse1 DATA aData SIZE  100,10

DCBROWSECOL ELEMENT 1  WIDTH 4    HEADER "ID"    PARENT oBrowse1
DCBROWSECOL ELEMENT 2  WIDTH 4    HEADER "Col1"  PARENT oBrowse1
DCBROWSECOL ELEMENT 3  WIDTH 4    HEADER "Col2"  PARENT oBrowse1
DCBROWSECOL ELEMENT 4  WIDTH 4    HEADER "Col2"  PARENT oBrowse1

DCREAD GUI FIT TITLE 'Window test' OPTIONS GetOptions Parent @oDlg SETAPPWINDOW

RETURN




Procedure Win(nMod,xoDlg)
******************************************************************
LOCAL GetList:={}, oDlg1,aData := {},oBrowse1 ,nVar := 0
aadd(aData,{1,"Col1","Col2","Col2"})
aadd(aData,{2,"Col1","Col2","Col2"})
aadd(aData,{3,"Col1","Col2","Col2"})

@ 1,1 DcSay 'This is Child Window 1' SAYFONT '9.Arial Bold' SAYSIZE 40,1
@ 2,1 DcSay 'Get' get nVar pict "999" saysize 0
@ 3,1 DCBROWSE oBrowse1 DATA aData SIZE  35,10

DCBROWSECOL ELEMENT 1  WIDTH 4    HEADER "ID"    PARENT oBrowse1
DCBROWSECOL ELEMENT 2  WIDTH 4    HEADER "Col1"  PARENT oBrowse1
DCBROWSECOL ELEMENT 3  WIDTH 4    HEADER "Col2"  PARENT oBrowse1
DCBROWSECOL ELEMENT 4  WIDTH 4    HEADER "Col2"  PARENT oBrowse1

do case
     case nMod = 1
          DCREAD GUI FIT TITLE 'OWNER' OWNER xoDlg Parent @oDlg1
     case nMod = 2
          DCREAD GUI FIT TITLE 'APPWINDOW' APPWINDOW xoDlg Parent @oDlg1
     case nMod = 3
          DCREAD GUI FIT TITLE 'MODAL' MODAL Parent @oDlg1
     case nMod = 4
          DCGETOPTIONS ALWAYSONTOP
          DCREAD GUI FIT TITLE 'Window ALWAYSONTOP'  //Parent @oDlg1

endcase
Return
Benutzeravatar
Rudolf
Programmier-Gott
Programmier-Gott
 
Beiträge: 1145
Registriert: Mo, 02. Jan 2006 23:03
Wohnort: Salzburg/Österreich

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 9:51

ALWAYSONTOP sollte man nur mit nichtmodalen Fenstern machen, die in eigenen Threads laufen. Das ist für Statusfenster und ähnliches gedacht, nicht für den täglichen Gebrauch. Es bezieht sich immer auf die gesamte Applikation. Es kann auch immer nur ein Fenster geben, das diese Eigenschaft hat.

SetAppWindow(oDlg) gehört nicht in die GetOptions, sondern ins DCREAD GUI.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 10:03

ok, vielleicht hilft das ja weiter?

Ich starte das Programm. Dann öffne ich einen Dialog. Öffne den nächsten Dialog. Wechsel zurück in den ersten Dialog, klicke dort irgendwo rein und versuche dann über den Cascading Button in der Menueleiste (Window) den 2.Dialog zu aktivieren. Der blinkt nur kurz auf und verschwindet dann wieder im Hintergrund. Also keine Chance. Jetzt klicke ich auf das Kreuz im 1.Dialog, es passiert nichts. Nun minimiere ich den 1.Dialog und der 2.ist sichtbar. Dort klicke ich auf das Kreuz und es gehen beide zu. Das kann man auch mit mehreren Dialogen machen. Es gehen dann alle Dialoge auf einmal zu, die vorher beendet werden sollten, aber nicht reagiert haben. Sieht mir verdammt nach einem Eventschleifenproblem aus. Ich dachte man könnte mehrere DCREADs übereinander machen?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 10:44

Du musst die Dialoge in eigenen Threads starten.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon brandelh » Di, 17. Mai 2016 11:20

Tom hat geschrieben:Du musst die Dialoge in eigenen Threads starten.


dann muss das aber mit Express zusammen hängen, meine Dialoge funktionieren einwandfrei solange der owner stimmt und sind alle in einem Thread mit einer gemeinsamen Event Schleife.
Gruß
Hubert
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
 
Beiträge: 13195
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 11:24

ich denke mal, jedes DCREAD macht eine eigene Eventschleife auf!?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 11:31

Es hängt davon ab, was Du erreichen willst. Jedes DCREAD stoppt quasi den Thread/das Programm an dieser Stelle - und erst wenn es beendet wird, geht es zurück ans aufrufende Fenster, weil jeder Dialog seine eigene Eventloop hat. Deshalb hat Modalität an solchen Stellen durchaus Sinn. Es gibt aber auch in eXpress++ Techniken, um anders zu arbeiten. Die einfachste und eleganteste besteht jedoch darin, mit Multithreading zu arbeiten - dann sind alle Dialoge komplett unabhängig voneinander.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 11:34

ich werde das jetzt mal ausprobieren. Man kann ja nur lernen dadurch. Wobei ich das von Anfang schon in Betracht gezogen hatte, aber irgendwie war ich der Meinung es würde mit express++ anders laufen. Das war aber anscheinend ein Irrtum.

Ich sehe gerade, in der Demo arbeitet Roger auch mit Threads. Sowas Dummes, das ich das nicht früher geprüft habe.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 11:57

jetzt stehe ich hier wieder vor der Wand.

Code: Alles auswählen
ACTION {|o|o := Thread():new(), o:start({|| tagesdienste(oMenu1,o)})}


bei o:start wird alles akzeptiert, aber der Parameter wird angemeckert?
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 12:02

"o" ist im Codeblock nicht bekannt. Wozu brauchst Du dort auch das Threadobjekt?
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 12:05

warum ich das als Parameter übergeben will? Nun, irgendwo muß ich den Thread ja wieder beenden. Und das wollte ich dann in der aufgerufenen Funktion am Ende machen.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Tom » Di, 17. Mai 2016 12:07

Die aufgerufene Funktion - in der sich der Dialog befindet - beendet sich durch ihr RETURN. Dann verschwindet auch der Thread.
Herzlich,
Tom
Benutzeravatar
Tom
Der Entwickler von "Deep Thought"
Der Entwickler von "Deep Thought"
 
Beiträge: 6656
Registriert: Do, 22. Sep 2005 22:11
Wohnort: Berlin

Re: Focuswechsel übereinanderliegende Dialoge

Beitragvon Manfred » Di, 17. Mai 2016 12:09

hm, das wagte ich nicht zu hoffen. Ich hatte nur geprüft, ob der Thread erzeugt wird. Dann werde ich das mal nachschauen im Debugger.
Gruß Manfred
Mitglied der XUG Leverkusen
Mitglied der XUG Osnabrück
Schatzmeister des Deutschsprachige Xbase-Entwickler e.V.
Benutzeravatar
Manfred
Foren-Moderator
Foren-Moderator
 
Beiträge: 15834
Registriert: Di, 29. Nov 2005 16:58
Wohnort: Kreis Wesel

Nächste

Zurück zu eXpress++

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast