Bildschirmflackern bei Ausgabe von Umlauten

Moderator: Moderatoren

rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo zusammen,

ich schon wieder... :)

Flagship: Wenn ich z.B. "Änderung" via SAY ausgebe (in Variable) flackert der Bildschirm gnaz schrecklich, ändere ich das "Ä" auf "AE" (oder nehme es weg) flackert er nicht :(


hat jemand vielleicht eine Idee?

Danke, LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
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: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von Tom »

Riecht nach dem Fehlschlag einer Vergleichsoperation:

Code: Alles auswählen

c := "Änderung"
oSay:SetCaption(ConvToAnsiCP(c))
irgendwo anders, vielleicht in einer Schleife:

Code: Alles auswählen

IF c # oSay:Caption
  oSay:SetCaption(ConvToAnsiCP(c)) 
ENDIF
Mit Umlauten immer falsch, weil für die Ausgabe konvertiert wird (OEM -> ANSI).

Code wäre - wie immer - hilfreich(er).
Herzlich,
Tom
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

HI Tom,

der Code ist simple...

_fttab[01] = 'Änderung'
@ 38,00 say 'F1=' + _fttab[01]
wait

das Ergebnis:
"F1= nderung" und flackernder/zuckender BS



Deine Erklärung verstehe ich leider nicht.

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

Im folgenden meine Grundeinstellungen zu Visual FlagShip. Damit ist auch das Flackern weg.
Die deutschen Umlaute und der Index ist dann auch richtig eingestell

Code: Alles auswählen

** Flagship SET Einstellungen
READINSERT(.T.)
SET AUTOLOCK ON
SET EXCLUSIVE OFF
SET GUICOLORS ON
SET GUITRANSL BOX ON
SET SOURCE ISO
SET FONT 'Consolas', 10.5

** Set German sorting table
FS_SET('loadLang', 1, 'FSsortab.ger')
FS_SET('setLang' , 1)
FS_SET('mapping' , 'FSchrmap.def')

** FlagShip andere Einstellungen
oTopBar:CLEAR()
oApplic:Font:Charset(FONT_ISO8859_15)
oApplic:Caption := "INFOSYMA-IN "                // one space - or any string of your choice
FS_SET('guikey', 'FSguikey.iso1')
_aGlobSetting[GSET_G_N_REFRESHDRAW] := -1
oAppWindow:SetFixSize(30, 141)                   // 02.11.2015
oFont := Font{'Consolas', 10.5}
_aGlobSetting[GSET_G_O_ALERT_FONT] := oFont
Mit freundlichen FlagShip Grüßen
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo Johann,

vielen Dank, ich kämpfe mich mal durch... :)

Muss der Index schon mit den Einstellungen aufgebaut sein?
** Set German sorting table
FS_SET('loadLang', 1, 'FSsortab.ger')
FS_SET('setLang' , 1)
FS_SET('mapping' , 'FSchrmap.def')

Ich bekomme beim use nämlich einen Fehler:

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

:(
Run-time error 307.. line 49
undefined variable
access of variable "FONT_ISO88" attempted


line 49 = oApplic:Font:Charset(FONT_ISO8859_15)

:oops: :?: :?:
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hall Ralf,

Was für einen Fehler bekommst Du. Du solltest alle Index Dateien erneut erstellen.

Mit freundlichen FlagShip Grüßen
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

bekomme danach folgenden Fehler:
http://prntscr.com/9p6lu8

das ist der code ab 93:
SELECT 0
USE SYSOPEN INDEX SYSOPEN, SYSOPEN1
GO TOP
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

Diese INCLUDE Dateien müssen im Quellcode auch noch angegeben werden.
#include 'font.fh'
#include 'dialog.fh'

Mit welcher FlagShip Version arbeitest Du? Ich arbeite mit Visual FlagShip 7.1.24.

Mit freundlichen FlagShip Grüßen
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

das schaut jetzt schon besser aus :)

melde mich wieder...

Ich arbeite mit
FlagShip 7.1.24 for Windows/BCC

Danke LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo Johann,

funktioniert soweit, das "Ä" wird nur nicht angezeit sondern ein Sonderzeichen.. :?:
http://prntscr.com/9p7b9e

Danke, LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

ist die Anzeige eine @ xx,xx SAY "ÄString" oder ist es ein DBF Feld.
Wenn das mit einem SAY angezeigt wird, mit welchem Editor abeitest Du.

Ich arbeite mit dem MED 3.02 von http://www.med-editor.com.

Mit freundlichen FlagShip Grüßen
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo Johann,

ist say "ÄString"...

wie

_fttab[01] = 'Änderung'
@ 38,00 say 'F1=' + _fttab[01]


ich arbeite schon kange Zeit mit Notepad++ Bild
http://prntscr.com/9p7qx7

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

ich habe Dein Beispiel ausprobiert. Es funktioniert einwandfrei.

Mit freundlichen FlagShip Grüßen
Johann Matyschik
Dateianhänge
Beispiel.jpg
Beispiel.jpg (14.72 KiB) 17677 mal betrachtet
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

verstehe ich nicht :( dann liegt es vllt doch an der Kodierung vom Editor...
http://prntscr.com/9p8i9u


ich versuche mal einen anderen..

Dankeschööön

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

ich habe noch nicht gefragt mit welchem Parameter Du kompilierst.
-io=g für den GUI Modus, also eine Windows Anwendung.
-io=t für den Terminal Modus also wie für eine Clipper Anwendung.

Ich benutze nur den GUI Modus.

Herzliche FlagShip Grüße
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo zusammen, Hallo Johann,

ich arbeite im GUI-Modus (io=g)

Ich verstehe nix mehr...

Eingabe in DB via "GET" -> http://prntscr.com/9pd70k
Anzeige aus DB über "SAY" -> http://prntscr.com/9pd540

und so steht es in der DB wenn ich mit CDBF anschaue -> http://prntscr.com/9pd7nr

vllt. muss ich mal drüber schlafen...

Gute N8

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
Benutzeravatar
AUGE_OHR
Marvin
Marvin
Beiträge: 12903
Registriert: Do, 16. Mär 2006 7:55
Wohnort: Hamburg
Hat sich bedankt: 19 Mal
Danksagung erhalten: 44 Mal

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von AUGE_OHR »

rsz hat geschrieben:ist say "ÄString"...
wie

Code: Alles auswählen

_fttab[01] = 'Änderung'
@ 38,00 say 'F1=' + _fttab[01]
ich arbeite schon kange Zeit mit Notepad++ Bild
http://prntscr.com/9p7qx7
ich kenne mich nicht mit Flagship aus ... aber mit Windows ;)

die deutschen Umlaute stehen wohl in deiner DBF ( was nimmst du da als Editor ? ) was man am "Header" der DBF überprüfen könnte.
Frage : was für einen Index Type ( NTX / CDX ) ?

alte Cl*pper DBF / DBT sind immer OEM aber Windows ist ANSI ( bzw. Unicode )
unter Xbase++ werden nun "automatisch"*** OEM <-> ANSI Konvertierung für solche DBFNTX Inhalte vorgenommen.
*** das ist was Tom mit ConvToAnsi() andeutet.
---
ich gehe mal davon aus das dein Editor (Notepad++) ein Windows Produkt ist wo du die Codierung einstellen kannst was mit dem Windows NOTEPAD.EXE nicht geht weil der immer ANSI macht.

bei Xbase++ gibt es den Compiler Schalter /ga
Literale Zeichen von ANSI nach OEM konvertieren
bei Flagship sollte es ähnlich sein.
gruss by OHR
Jimmy
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Jimmy,

FlagShip hat das eigene Indexformat *.idx. Dieser Fehler hat auch nichts mit dem Index
zu tun. Der Fehler tritt ja schon bei einem SAY Befehl auf. Ich arbeite nun schon seit vielen
Jahren mit FlagShip und kann mich am Anfang auch an solche Fehler erinnern.

Jedoch waren dann alle Umlaute verkehrt. Ich habe bei meinem MED Editor solange die Einstellungen
geändert bis die Darstellung in Ordnung war, allerdings waren immer alle Umlaute verkehrt oder richtig.

So einen Mischmasch habe ich nie gehabt.

Da nicht bekannt ist womit die Datenbank erzeugt wurde, würde ich den fehlerhaften Eintrag testweise
erst einmal korigieren und das Verhalten beobachten.

Herzliche FlagShip Grüße
Johann Matyschik
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Hallo ihr Nachtmenschen :)

ich nutze das idx von Flagship, ganz neu aufgebaut mit den Einstellungsempfehlungen von Johann,

die dbf's sind noch die alten von Clipper (DBU) erstellten, dbase III Type, Header = Ansi Charset

Die Umlaute habe ich mit flagship Compile erfasst, neuer Datensatz in bestehende Datenbank...

Das (Test-)Coding ist ein neues PRG mit nur wenig zeilen, ... get, read, say... liegt also niocht am bestehenden Code :(


Danke, LG, :D
Ralf

PS: Soll ich vllt mal den dbase-Type ändern?
diese bekomme ich angeboten: http://prntscr.com/9pja4c

PS2: Ich habe jetzt mit flagship-compile eine neue DB mit dbcreate angelegt: auch dbaseIII-Header und absolut gleiches Problem :(


Was ich rausgefunden habe: in der DB wird OEM Charset gespeichert, beim GET auf die DB ebenso, nur der SAY scheint im ANSI Charset zu arbeiten :(
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

:banghead: :banghead: :banghead:

"SET SOURCE OEM" ===> http://prntscr.com/9pjqdg


das soll es gewesen sein? Ich kann es gar nicht glauben :)

jetzt habe ich nur noch das Problem mit dem Editor.... das ist immer noch da :(

LG,
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
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: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von Tom »

Du musst Deine Quellcodes einfach nach ANSI konvertieren und danach Deinen Editor, der vermutlich auf OEM steht, auf ANSI umstellen. In Xbase++ ginge die Konvertierung so:

Code: Alles auswählen

SET CHARSET TO OEM
cSource := FileStr('main.prg')
cSource := ConvToAnsiCP(cSource)
FErase(cSource)
StrFile(cSource,'main.prg',.T.)
Anschließend sollte man nicht nur die Umlaute prüfen, sondern auch Sonderzeichen (€, ß) und möglicherweise verwendete Grafikzeichen.
Herzlich,
Tom
matyschik
UDF-Programmierer
UDF-Programmierer
Beiträge: 54
Registriert: Do, 14. Dez 2006 0:08

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von matyschik »

Hallo Ralf,

ich wollte Dir eine Demo von mir schicken. Hat leider nicht geklappt. Jetzt der zweite
Versuch. Habe gerade festgestellt das eine Datei maximal 3 MB groß sein darf. Das Pro-
blem scheint inzwischen ja auch gelöst zu sein.

Im EXAMPLES Verzeichnis ist das Programm fsadress.exe mit dem Quellcode. Damit kannst
Du auch den Editor testen.

Hast Du meine E-Mail erhalten?

Herzliche FlagShip Grüße
Johann Matyschik
Zuletzt geändert von matyschik am Mi, 13. Jan 2016 13:57, insgesamt 2-mal geändert.
Freundliche FlagShip Grüße
Johann
rsz
Cut&Paste-Entwickler
Cut&Paste-Entwickler
Beiträge: 26
Registriert: Mo, 04. Jan 2016 14:03

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von rsz »

Danke Tom, jetzt wo ich weiss was, was ist, ist es recht easy mit notepad++
==> http://prntscr.com/9pjzie


und tataaa :) ==> http://prntscr.com/9pk05h
checke jetzt mal den Rest und die "alten" datenbanken durch!

Danke für die guten Infos, komme mir vor wie ein Anfänger...

... bin ja auch einer :)

Herzliche Grueße, ihr hoert wieder von mir, versprochen :blob8:
Ralf
Dankeschön!

LG,
Ralf Schwarz

System: WIN 8.1 pro, 64-bit, FSHIP: 7.01.21 for BCC32
Benutzeravatar
brandelh
Foren-Moderator
Foren-Moderator
Beiträge: 15688
Registriert: Mo, 23. Jan 2006 20:54
Wohnort: Germersheim
Hat sich bedankt: 65 Mal
Danksagung erhalten: 33 Mal
Kontaktdaten:

Re: Bildschirmflackern bei Ausgabe von Umlauten

Beitrag von brandelh »

Hallo,

eigentlich gilt bei "uns" in Deutschland der westeuropäische Zeichensatz OEM 850, ob unsere Umlaute in beiden gleich sind hab ich aber nicht nachgesehen.
Gruß
Hubert
Antworten