Seite 1 von 1

Appevent - Anwendungsprobleme

Verfasst: Do, 11. Aug 2011 10:25
von uwe.24
Hallo,

ich hatte im Thread vorher schon geschrieben, dass ich Probleme habe beim Umbau von Clipper auf XBase.
Wie ihr mir geschrieben habt soll ich die appevent() Funktion nutzen.
Damit komm ich aber nicht klar.
Ich hatte mir das Beispiel DBGET2 aus den AlaskaSourcen angesehen und komme damit aber auch nicht weiter.
Ich bitte ums Nachsicht:
Ich bin Werkstofftechniker, der bislang Quick and Dirty Programmierung mit Clipper gemacht hat.

Kann mit jemand eine kurze Bauanleitung geben:

Maske aufbauen mit über 120 Get Feldern
Readmoadl(getlist,1) oder Read
wenn Taste = CtrlLinks dann
20 GetFelder weiter nach oben
wenn Taste = CtrlRechts dann
20 GetFelder weiter nach unten
wenn Taste = Ctrl-W dann
Prozedur Speichern aufrufen
wenn Taste Esc dann
Abbruch

Ich hab Probleme mit der korrekten Verwendung von Read oder Readmodal() und Appevent()

Das hab ich (auch) mal ohne Erfolg getestet.
Bitte Nachsicht wenn es ganz falsch ist.

Code: Alles auswählen

proc eingabe
  @  0, 0 clear to 24,79
  do forme1
  form = 1
  nStartGet = 1
  lExit := .f.
  DO WHILE ! lExit
    readmodal(Getlist,nStartGet)
    IF LastAppEvent() == xbeK_CTRL_LEFT
       do links
    endif
    IF LastAppEvent() == xbeK_ESC
       AppQuit()
    ENDIF
    GetRefresh(GetList)

  ENDDO


proc links
  if form > 2
    return
  endif
  spalte = col()
  reihe  = row()
  if nStartget >= 20
    nStartget = nStartget + 120
  else
    nStartget = nStartget -20
  endif
return

Vielen Dank schon mal.

Uwe aus OS

Re: Appevent - Anwendungsprobleme

Verfasst: Do, 11. Aug 2011 10:38
von Manfred
Hi Uwe,

wenn Du Dich durchringen könntest mal zu einem Treffen der XUG OS zu kommen, dann könnte man Dir vielleicht direkt (von Mann zu Mann :lol:) Hilfestellung geben. Das wirkt manchmal echt Wunder, wenn man direkt miteinander reden kann. Nur ein Vorschlag von mir. Wir machen das öfter und es hilft. :wink:

Re: Appevent - Anwendungsprobleme

Verfasst: Do, 11. Aug 2011 11:08
von brandelh
Hi,

wenn du mit dem GET System arbeitest, ist READ der Befehl der Wahl.
AppEvent() wird für eine Eventschleife im GUI Programm benutzt, der READ Befehl macht intern die Verarbeitung aber abhängig von setmouse(). Somit sind die entsprechenden Konstanten unterschiedlich. Ohne Maus muss man die Konstanten aus der inkey.ch ansonsten die der appevent.ch verwenden. Mal sehen ob ich ein Beispiel finde, ich habe auch so eine Eingabemaske in einem älteren Programm.

Re: Appevent - Anwendungsprobleme

Verfasst: Do, 11. Aug 2011 19:53
von AUGE_OHR
uwe.24 hat geschrieben:Wie ihr mir geschrieben habt soll ich die appevent() Funktion nutzen.
sorry das hast du falsch verstanden ... es ging um SetMouse(.T.)

ich würde am "Anfang" kein SetMouse(.T.) - /PM:PM benutzen und auch keine anderen XbParts bis dein Cl*pper Source auch unter Xbase++ läuft ...da gibt es noch einige "Kleinigkeiten"

Danach würde ich ein XbpDialog "drum-herum" legen und ein VIO "Fenster" auf der DrawingArea für deinen (ex Cl*pper ) Source erzeugen.

btw. sollte das Cl*pper in der Zwischenzeit weiter laufen so kannst du den Source Code so erweitern

Code: Alles auswählen

#IFDEF __XPP__
     // Xbase++ Syntax
#ELSE
     // Cl*pper Syntax
#ENDIF
Das grafische XbpDialog arbeitet mit "einer" AppEvent() Schleife für die gesamte Application.
Deine VIO Fenster arbeiten dann weiter nach Cl*pper Art ... UND können auch zusätzlich grafische Elemente benutzen ( Hybrid-Mode )

Re: Appevent - Anwendungsprobleme

Verfasst: Fr, 12. Aug 2011 5:05
von Martin Altmann
Uwe,
ich möchte Manfreds Angebot eindringlich wiederholen: Die XUG trifft sich am 20.08. mal wieder in Osnabrück! Die Gelegenheit für Dich, diesmal dabei zu sein! Wir freuen uns immer über neue Themenschwerpunkte bei einem solchen Treffen und diesmal könnten wir uns Dir und Deinen Fragen widmen.
Wende Dich einfach an Andreas, wenn Du kommen möchtest :arrow: http://www.xbaseforum.de/memberlist.php ... ofile&u=10

Viele Grüße,
Martin