Kaeru Gaman hat geschrieben:sorry:
wenn man Create unicode executable aktiviert und Sorce codierung UTF-8 einstellt,
dann funktioniert Chr() mit 2byte....
kommt wohl auch auf den verwendeten Zeichensatz drauf an...
ich bekomme jedenfalls bei deinem code den identischen fensterinhalt auch ohne den CompilerIf-Block.
OK, Danke Kaeru Gaman.
Dann könnte es fast ein Bug von PureBasic sein, da die Funktionsweise von Chr()
nicht davon abhängen sollte in welchem Format der Source gespeichert wird,
sondern von der Einstellung "Create unicode executable".
Man kann schliesslich auch Unicode verwenden ohne es direkt im Source zu schreiben.
Entweder mit Chr(), aber auch mit DataSections, direkt Werte in Speicherbereiche schreiben usw.
Wenn ich in meinem Source absolut kein Unicode verwende, sondern Werte
zur Laufzeit des Programmes aus einer Datei einlese, dann macht es keinen
Sinn meinen Source in UTF8 abspeichern zu müssen.
Wenn ich ankreuze 'Create unicode executable', dann sollte das auch funktionieren,
egal wie der Source gespeichert ist.
In der Hilfe zu Chr() steht aber dass das Argument ein 'ASCII-Value' ist, also
von 0 bis 127. Daher ist es kein Bug - nur Werte bis 127 werden offiziell
unterstützt (sonst hätte ich es in die Bug-Sektion gepostet).
Wenns dann zufällig doch geht, je nachdem wie man den Source abspeichert,
kann man das nur "komisches Verhalten" nennen.
