| |
|
|
Stephan Sonneborn | ¡Hola zusammen,
en el Ayuda es en Función SET("CHARSET", X), dass para x nun auch Werte >2 zulässig son. Welchen Valor debería uno porque para una russischen Zeichensatz einstellen? Yo habs con $0419 probiert. Sombrero pero no así hingehauen...
Eigentlich möchte Yo folgendes Problema lösen: Textos, el en russisch vorliegen, con Profano z.B. como Buttontexte oder Statictexte ausgeben. Also z.B. "Отмена" para "Abbrechen" en una Schaltfläche legen... |
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 22.05.2012 ▲ |
|
|
|
|
| Yo bin no sicher pero yo glaube dass el sólo Unicode o. WideChar- Controls va.
Tal vez helfen Usted esta Temas:
Wenn lo Usted rein en el Darstellen va entonces lo wohl el Einfachste si Usted una HTML-Control nutzt. |
|
|
| |
|
|
|
Stephan Sonneborn | Hola si,
como hast Usted ya bastante, el va sólo Unicode. Aber como genau???
Yo me Su Ejemplo angesehen. El russischen Signo beginnen en u+0400 y ir a u+04ff = 256 Signo.
Pensé, con SET ("CHARSET",~lang_russian) sería uno una offset conjunto y luego podría uno el Signo simplemente con zB. CHR$($0400) tomar. Geht pero no, como CHR$() sólo Werte zwischen 0...255 sabe.
Lo debería el Función CHRW$() o. ORDW() her.
Weiß alguien, cómo el erstellt?
In VB es scheinbar el CHRW()-Función de Haus de esta.
Man podría se sí vorstellen, el STATICS y EDITS después de Deiner Vorgabe a redactar (encima CreateW() o. CreateWindowExW()), entonces todos reciente Standardtexte umwandeln en WideChars y luego con un SetTextW el Textos en el Controls eintragen...
Aber como???
|
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 29.05.2012 ▲ |
|
|
|
|
| ¡Hola Stephan,
Nico y yo haben soeben folgendes erarbeitet,
Por favor, probiere veces en como weit el así klappt: KompilierenMarcaSeparación {$cleq}
{$compiler c:\xprofan12}
{$runtime c:\xprofan12}
CLS
Struct CREATESTRUCT = lpCreateParams&, hInstance&, hMenu&, hwndParent&, cy%, cx%, y%, x%, style&, lpszName&, lpszClass&, dwExStyle&
var id% = 1
Var static&=CreateW("STATIC","Das ist ein Static. \nHier sollen Unicode-Zeichen rein.",$50000000,10,10,width(%hwnd)-20,35,%hwnd,0,%hinstance)
Waitinput
SetWindowTextW(static&,utf("Test ")+chrw(400)+utf(" Test"))
Waitinput
End
proc chrw
parameters wc&
declare m#
dim m#,2
word m#,0=wc&
var s$=char$(m#,0,2)
dispose m#
return s$
endproc
Proc UTF
parameters text$
declare b#
Dim b#,2*len(text$)+2
StringW b#,0 = text$
text$ = Char$(b#,0,SizeOf(b#)-2)
return text$
EndProc
Proc CreateW
parameters Class$,Name$,style&,x%,y%,dx%,dy%,pWnd&,pid%,hInst&,exstyle&
case %pCount <11 : exstyle& = 0
Class$ = UTF(Class$)
Name$ = UTF(Name$)
Var cs# = New(CREATESTRUCT)
With cs#
.lpCreateParams& = SizeOf(cs#)
.hInstance& = hInst&
.hMenu& = (IsMenu(id%)<>0) * id%
.hwndParent& = pWnd&
.cy% = dy%
.cx% = dx%
.y% = y%
.x% = x%
.style& = style&
.lpszName& = Addr(Name$)
.lpszClass& = Addr(Class$)
.dwExStyle& = exstyle&
EndWith
Var handle& = CreateWindowExW(exstyle&,Addr(Class$),Addr(Name$),style&,x%,y%,dx%,dy%,pWnd&,id%,hInst&,cs#)
Class$ = WinError$(%WinError)
inc id%
IfNot handle&
MessageBox("Es trat folgender Fehler auf:\n\n" + Class$,"F E H L E R !!!",4096)
EndIf
Dispose cs#
Return handle&
=s4 href='./../../funktionsreferenzen/XProfan/ENDPROC/'>ENDPROC
|
|
|
| |
|
|
|
Stephan Sonneborn | Hola si, hallo Nico,
danke para Eure Unterstützung. Leider zeigt me el Code garnichts a... KompilierenMarcaSeparación'URL: https://xprofan.com/intl/de/forum/russischer-zeichensatz/
'{$cleq}
'{$compiler c:\xprofan12}
'{$runtime c:\xprofan12}
DEF IsMEnu(1) !"USER32", "IsMenu"
DEF CreateWindowExW(12) !"USER32", "CreateWindowExW"
DEF SetWindowTextW(2) !"USER32", "SetWindowTextW"
CLS
Struct CREATESTRUCT = lpCreateParams&, hInstance&, hMenu&, hwndParent&, cy%, cx%, y%, x%, style&, lpszName&, lpszClass&, dwExStyle&
var id% = 1
Var static&=CreateW("STATIC","Das ist ein Static. \nHier sollen Unicode-Zeichen rein.",$50000000,10,10,width(%hwnd)-20,35,%hwnd,0,%hinstance)
Waitinput
SetWindowTextW(static&,utf("Test ") + chrw($401) + utf(" Test"))
Waitinput
End
proc chrw
parameters wc&
declare m#
dim m#,2
word m#,0=wc&
var s$=char$(m#,0,2)
dispose m#
return s$
endproc
Proc UTF
parameters text$
declare b#
Dim b#,2*len(text$)+2
StringW b#,0 = text$
text$ = Char$(b#,0,SizeOf(b#)-2)
return text$
EndProc
Proc CreateW
parameters Class$,Name$,style&,x%,y%,dx%,dy%,pWnd&,pid%,hInst&,exstyle&
case %pCount <11 : exstyle& = 0
Class$ = UTF(Class$)
Name$ = UTF(Name$)
Var cs# = New(CREATESTRUCT)
With cs#
.lpCreateParams& = SizeOf(cs#)
.hInstance& = hInst&
.hMenu& = (IsMenu(id%)<>0) * id%
.hwndParent& = pWnd&
.cy% = dy%
.cx% = dx%
.y% = y%
.x% = x%
.style& = style&
.lpszName& = Addr(Name$)
.lpszClass& = Addr(Class$)
.dwExStyle& = exstyle&
EndWith
Var handle& = CreateWindowExW(exstyle&,Addr(Class$),Addr(Name$),style&,x%,y%,dx%,dy%,pWnd&,id%,hInst&,cs#)
Class$ = WinError$(%WinError)
inc id%
IfNot handle&
MessageBox("Es trat folgender Fehler auf:\n\n" + Class$,"F E H L E R !!!",4096)
EndIf
Dispose cs#
Return handle& lass=s4 href='./../../funktionsreferenzen/XProfan/ENDPROC/'>ENDPROC
No una vez el "Test" davor y detrás de él... |
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 29.05.2012 ▲ |
|
|
|
|
Nico Madysa | Oh, natürlich zeigt él dir nichts a. SetWindowTextW es una API-Función y kann con XProfan-Cuerdas nichts anfangen; uno muss ihm el Adresse en el Cuerdas überweisen:
Var static&=CreateW("STATIC","Das es una Static. \nHier debería Unicode-Signo rein.",$50000000,10,10,width(%hwnd)-20,35,%hwnd,0,%hInstance)
Waitinput
var a$ = utf("Test ") + chrw($401) + utf(" Test")
SetWindowTextW(static&,Addr(a$))
So geht's. |
|
|
| |
|
|
|
| Hoch, Yo hahm a el Stephan el Präkompi en el Einsatz ha ^ ^ |
|
|
| |
|
|
|
Stephan Sonneborn | Nico Madysa (29.05.12)
So geht's.
Sí, así geht's. *sichandenkopfschlägt* Gracias Nico, para Su Ayuda!
Aber nun el Ausbaustufe: Yo habe Textos (z.B. de Excel), el mentira así antes: "Отмена" Como bekomme Yo el nun como texto en un Unicode-Control adecuado? Man debería doch zuerst una vez herausbekommen, welches Signo es el porque nun, qué como adecuado se. Ein ORD() liefert natürlich auch otra vez sólo Pagar zwischen 0...255. Gibts a una entsprechendes OrdW()? Dann podría uno tal vez cada String zeichenweise umsetzen en el UniCode-Formato y luego como Genazes otra vez Mostrar. (Falls en el Posting sólo ?????? adecuado voluntad: In mi ersten Contribución es el russische Begriff) |
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 30.05.2012 ▲ |
|
|
|
|
| Ordw como Nuevo: [...]
o.:
[OFFTOPIC] Stephan Sonneborn (30.05.12)(Falls en el Posting sólo ?????? adecuado voluntad: In mi ersten Contribución es el russische Begriff)
Scheinbar una Bug meiner Post Previsualización - schaue Yo en Gelegenheit a. [/OFFTOPIC] |
|
|
| |
|
|
|
Nico Madysa | Auf dieser Página [...] findest du así bastante todos Kodierungsumwandlungen, el dein Herz begehren kann, como NProcs; auch Widechar-Varianten de Chr$() y Ord() son esta.
Yo hoffe, lo bereitet dir no Schwierigkeiten, ellos en un XPSE-freie Syntax a traducir.
Aber Yo sehe gerade no, por qué du OrdW brauchen solltest. Dem Widechar-Control, el con CreateW erstellt worden es, müsstest du sólo el Texto por SetWindowTextW zuweisen. Wenn el Texto, el du zuweisen willst, ya widecharkodiert es (also 2 Bytes pro Signo), entonces hay esta gar no Hindernisse.
Oder con otro Worten: Yo sehe gerade no, wo dein Problema liegt. |
|
|
| |
|
|
|
Stephan Sonneborn | Nico Madysa (30.05.12)
Oder con otro Worten: Yo sehe gerade no, wo dein Problema liegt.
Mein Problema liegt hierin: Füg veces esta beiden Zeilen en Su Quellcode una:
En me voluntad entonces chinesische (oder qué De todos modos) Signo adecuado... |
|
|
| Schöne Grüße aus Wittgenstein von Stephan
Programmierumgebung:| XProfan X4 | WIN10 | AMD FX6100 3,3 GHz | 31.05.2012 ▲ |
|
|
|
|
| Yo habe Usted hier algo "hingeschmiert" qué el Inhalt uno con Widechar-Chars- gefüllten Zwischenablage como CHR$(...-Sequenz en el Zwischenablage ablegt.
So kannst Usted z.B.: укепщьаь
en el Zwischenablage nehmen y luego el Programa starten y luego kommt como: en fuera.
Das wiederum como Valor para b$ zeigt el Gewünschte.
Descargar externer Descargar
|
|
|
| |
|
|