Hallo Zusammen,
ich habe seit Jahren ein Warenwirtschaftssystem im Einsatz, mit XBase 2.0 kompiliert, im Hybrid-Modus.
In meinen Browsern arbeite ich mit einer Suchlogik, dass der Kunde z.B. durch Eingabe einer Artikelnummer in einer Suchspalte (z.B. Artikelnummer) direkt die Artikelnummer suchen kann. Dabei wird die Spalte just in Time indiziert und die Suche mit Dbseek sofort ausgeführt.
Der Satz wird gesucht und gefunden und im Browser positioniert. (das Ganze läuft in temp. Dbf-Dateien)
Das gleiche geht mit vielen Spalten (Artikelbezeichnung, Erfassungsdatum etc.)
Läuft seit 20 Jahren stabil. (Textumgebung (80*20))
So weit so gut. Jetzt wollte der Kunde das eigentlich triviale Problem gelöst haben durch Drag and Drop z.B. eine Artikelnummer aus irgend einer Internetseite in den Zwischenpuffer kopiert werden kann (Ctrl-C), und anschließend mit Ctrl-V in meinem Browser eingefügt werden kann.
Kein Problem dachte ich, und habe das Auslesen der Zwischenpuffers im Tbrowse eingebaut, und bei mir läuft es super.
Im Bereich Taste verarbeiten habe ich folgenden Code eingebaut:
CASE nKey == K_CTRL_V // im Dbedit
cString := alltrim(GET_WINCLIP())
if ! empty(cString)
keyboard cString // schiebe einfach den Puffer ins Keyboard ""
endif
Jetzt kommt mein Problem.
Ich habe die Version beim Kunden eingespielt, und bei Ihm geht es nicht.
Er kopiert die Artikelnummer in den Zwischenpuffer, aber in meinem Browser wird der Zwischenpuffer nicht einfügt.
Wenn ich mich jedoch mit dem Teamviewer (Fernwartung) auf seinen Arbeitsplatz einwähle und dort am gleichen Gerät unter seinen Augen per Fernwartung das gleiche mache, geht es ...
Warum verhält sich das Programm dort anders ?
Ist mir ein Rätsel, habt Ihr ne Idee ?
Gruß Rudi
Einfügen mit Strg-V unter Tbrowse und Get-System
Moderator: Moderatoren
-
- Cut&Paste-Entwickler
- Beiträge: 42
- Registriert: Do, 12. Feb 2009 11:30
- Danksagung erhalten: 2 Mal
- AUGE_OHR
- Marvin
- Beiträge: 12907
- Registriert: Do, 16. Mär 2006 7:55
- Wohnort: Hamburg
- Hat sich bedankt: 19 Mal
- Danksagung erhalten: 45 Mal
Re: Einfügen mit Strg-V unter Tbrowse und Get-System
hi,
das ist die Xbase++ Seite aber es gibt IHMO noch was.
starte dein VIO App, clicke auf die TItlebar, rechte Maustaste -> Menu -> und dann Eigenschaften
was hast du in GET_WINCLIP()Bitmusterschuster hat geschrieben: ↑Mo, 05. Okt 2020 16:21Code: Alles auswählen
CASE nKey == K_CTRL_V // im Dbedit cString := alltrim(GET_WINCLIP()) if ! empty(cString) keyboard cString // schiebe einfach den Puffer ins Keyboard "" endif
Code: Alles auswählen
// Copy from Clipboard
CASE nEvent == xbeK_CTRL_V // Insert
oClipBoard := XbpClipBoard() :new() :create()
oClipBoard:open()
aFormats := OClipBoard:queryFormats()
IF ASCAN( aFormats, XBPCLPBRD_TEXT ) > 0
cText := oClipBoard:getBuffer( XBPCLPBRD_TEXT )
n := LEN( cText )
FOR i := 1 TO n
cChar := cText[ i ]
/* Transfer character to edit buffer */
IF SET( _SET_INSERT )
oGet:insert( cChar )
ELSE
oGet:overstrike( cChar )
ENDIF
/* No room left to type to the right of the cursor */
IF oGet:typeOut
IF SET( _SET_BELL )
QQOUT( CHR( 7 ) )
ENDIF
IF !SET( _SET_CONFIRM )
oGet:exitState := GE_ENTER
ENDIF
EXIT
ENDIF
NEXT i
ENDIF
oClipBoard:close()
oClipBoard:destroy()
starte dein VIO App, clicke auf die TItlebar, rechte Maustaste -> Menu -> und dann Eigenschaften
gruss by OHR
Jimmy
Jimmy
- brandelh
- Foren-Moderator
- Beiträge: 15697
- Registriert: Mo, 23. Jan 2006 20:54
- Wohnort: Germersheim
- Hat sich bedankt: 66 Mal
- Danksagung erhalten: 33 Mal
- Kontaktdaten:
Re: Einfügen mit Strg-V unter Tbrowse und Get-System
Ich weiß nicht was du da genau machst bei der Eingabe (tBrowse stellt ja nur da ...), ich habe etwas ähnliches gemacht mit F2 als Übernahme der Zwischenablage in ein GET Objekt,
wobei ich nicht über Keyboard gehe sondern über das GET Objekt selbst:
das Einfügen mit STRG+V in GET Objekten hat früher automatisch funktioniert,
aber seit Jahren sieht das mehr oder weniger seltsam aus und teilweise fehlen Textteile ... ob das an Windows liegt weiß ich nicht.
wobei ich nicht über Keyboard gehe sondern über das GET Objekt selbst:
Code: Alles auswählen
...
set key K_F2 to f2hilfe
...
procedure f2hilfe (proz,zei,_var)
local altcursor,nochmal,altfarb,altselect,af[12],a,altget,altbild
proz=left(upper(alltrim(proz)),10)
_var=upper(alltrim(_var))
if proz="MEMOEDIT" .or. proz="DBEDIT"
return
endif
if (proz="BUCH_NEU" .or. proz="BUCH_AENDE") .and. (_var="MSOLL" .or. _var="MHABEN")
// Text aus Zwischenablage bergeben.
PasteBetrag(_var)
return
endif
.... weitere Eingabhilfen ...
*-----------------------------------------------------------------------------
procedure PasteBetrag(cVar) // F2 in Betragsfelder
local x, oActiveGet, oClipBoard, cTxt, nVal
oClipBoard := XbpClipBoard():new():create()
oClipBoard:open()
// aFormats := oClipBoard:queryFormats()
// IF AScan( aFormats, XBPCLPBRD_TEXT ) > 0
cTxt := oClipBoard:getBuffer( XBPCLPBRD_TEXT )
nVal := abs(HB_VAL(cTxt))
oClipBoard:close()
oActiveGet := GetActive()
oActiveGet:VarPut(nVal) // aktuelles Feld füllen
keyboard chr(K_ENTER)
return
aber seit Jahren sieht das mehr oder weniger seltsam aus und teilweise fehlen Textteile ... ob das an Windows liegt weiß ich nicht.
Gruß
Hubert
Hubert
-
- Cut&Paste-Entwickler
- Beiträge: 42
- Registriert: Do, 12. Feb 2009 11:30
- Danksagung erhalten: 2 Mal
Re: Einfügen mit Strg-V unter Tbrowse und Get-System
Danke Dir Ohr ...
Ich habe aber alles ausprobiert, nichts hat funktioniert. Liegt wohl am Rechner, bei allen anderen Usern im Netz funzt es.
Ich hatte dann die Appl. aus dem Kommandofenster gestartet und dort unter Eigenschaften die Strg-Unterstützung aktiviert, dann ging es einmal, danach wieder nicht.
Es ist kein Muster zu erkennen.
Ich hatte auch deinen Quellcode eingebaut ( im get-system), dort hatte ich die gleichen Ergebnisse.
Ich habe dem Kunden empfohlen mal den Rechner zu tauschen.
Gruß Rudi
Ich habe aber alles ausprobiert, nichts hat funktioniert. Liegt wohl am Rechner, bei allen anderen Usern im Netz funzt es.
Ich hatte dann die Appl. aus dem Kommandofenster gestartet und dort unter Eigenschaften die Strg-Unterstützung aktiviert, dann ging es einmal, danach wieder nicht.
Es ist kein Muster zu erkennen.
Ich hatte auch deinen Quellcode eingebaut ( im get-system), dort hatte ich die gleichen Ergebnisse.
Ich habe dem Kunden empfohlen mal den Rechner zu tauschen.
Gruß Rudi
- Marcus Herz
- 1000 working lines a day
- Beiträge: 852
- Registriert: Mo, 16. Jan 2006 8:13
- Wohnort: Allgäu
- Hat sich bedankt: 39 Mal
- Danksagung erhalten: 192 Mal
- Kontaktdaten:
Re: Einfügen mit Strg-V unter Tbrowse und Get-System
Ich glaub, du musst Strg-Umschalt im Basis Commando-Fenster aktivieren. Wenn du das Applikationsfenster schliesst, ist die Einstellung verloren.
Kontrollier das mal. Ich glaub nicht, dass das am Rechner liegt.
Kontrollier das mal. Ich glaub nicht, dass das am Rechner liegt.
Gruß Marcus
Erkenne, was du findest, dann weißt du, wonach du gesucht hast
Erkenne, was du findest, dann weißt du, wonach du gesucht hast