Unicode malfunction according to modal / nomodal format
Unicode malfunction according to modal / nomodal format
For Unicode and UTF8 use
In the modal / nomodal dialog, tGet and mget control malfunction.
It works fine regardless of richiedit.
In other words
Activate Dialog == No abnormality
Activate Dialog NoModal == malfunction
In the future, most of the source coding will be in the MDI window
Dialog Child / NoModal type, so UTF8 input is required.
The current project execution is stopped.
Please help.
msc2017 use FWH 18.02
In the modal / nomodal dialog, tGet and mget control malfunction.
It works fine regardless of richiedit.
In other words
Activate Dialog == No abnormality
Activate Dialog NoModal == malfunction
In the future, most of the source coding will be in the MDI window
Dialog Child / NoModal type, so UTF8 input is required.
The current project execution is stopped.
Please help.
msc2017 use FWH 18.02
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Unicode malfunction according to modal / nomodal format
We are checking it, please wait one day or two, thanks
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Unicode malfunction according to modal / nomodal format
We are testing this example:
unimdi.prg
unimdi.prg
Code: Select all
#include "fivewin.ch"
static aStr[ 5 ]
//----------------------------------------------------------------------------//
function Main()
local oWnd, oBar, oFont
FW_SetUnicode( .T. )
SetGetColorFocus()
AEval( aStr, { |u,i| aStr[ i ] := Space( 25 ) } )
DEFINE FONT oFont NAME "Segoe UI" SIZE 0,-18
DEFINE WINDOW oWnd MDI TITLE "UNICODE GETS"
DEFINE BUTTONBAR oBar SIZE 80,60 2007
DEFINE BUTTON OF oBar PROMPT "MDI" + CRLF + "Child" CENTER ACTION ChildWindow()
DEFINE BUTTON OF oBar PROMPT "Modal" + CRLF + "Dialog" CENTER ACTION NewDialog( .T. )
DEFINE BUTTON OF oBar PROMPT "Nonmodal" + CRLF + "Dialog" CENTER ACTION NewDialog()
oWnd:SetFont( oFont )
ACTIVATE WINDOW oWnd
RELEASE FONT oFont
return nil
//----------------------------------------------------------------------------//
static function ChildWindow()
local oWnd
DEFINE WINDOW oWnd MDICHILD OF WndMain() COLOR CLR_BLACK, CLR_WHITE
CreateGets( oWnd )
oWnd:bGotFocus := { || oWnd:Update() }
ACTIVATE WINDOW oWnd
return nil
//----------------------------------------------------------------------------//
static function NewDialog( lModal )
local oDlg
DEFAULT lModal := .f.
DEFINE DIALOG oDlg SIZE 460, 260 PIXEL TRUEPIXEL FONT WndMain():oFont
CreateGets( oDlg )
oDlg:bGotFocus := { || oDlg:Update() }
if lModal
ACTIVATE DIALOG oDlg CENTERED
else
ACTIVATE DIALOG oDlg CENTERED NOMODAL
endif
return nil
//----------------------------------------------------------------------------//
static function CreateGets( oWnd )
local nRow := 60
@ nRow, 30 GET aStr[ 1 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 2 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 3 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 4 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
return nil
//----------------------------------------------------------------------------//
- Antonio Linares
- Site Admin
- Posts: 37481
- Joined: Thu Oct 06, 2005 5:47 pm
- Location: Spain
- Contact:
Re: Unicode malfunction according to modal / nomodal format
As a temporary workaround, if you create the GETs this way, then unicode works fine on NONMODAL dialogs:
ACTIVATE DIALOG oDlg CENTERED NOMODAL ;
ON INIT CreateGets( oDlg )
ACTIVATE DIALOG oDlg CENTERED NOMODAL ;
ON INIT CreateGets( oDlg )
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: Unicode malfunction according to modal / nomodal format
This is the revised program:
Unicode Gets on MDICHILD windows, modal and non-modal Dialogs work as expected.
Code: Select all
#include "fivewin.ch"
static aStr[ 4 ]
//----------------------------------------------------------------------------//
function Main()
local oWnd, oBar, oFont
FW_SetUnicode( .T. )
SetGetColorFocus()
AEval( aStr, { |u,i| aStr[ i ] := Space( 25 ) } )
DEFINE FONT oFont NAME "Segoe UI" SIZE 0,-18
DEFINE WINDOW oWnd MDI TITLE "UNICODE GETS"
DEFINE BUTTONBAR oBar SIZE 80,60 2007
DEFINE BUTTON OF oBar PROMPT "MDI" + CRLF + "Child" CENTER ACTION ChildWindow()
DEFINE BUTTON OF oBar PROMPT "Nonmodal" + CRLF + "Dialog" CENTER ACTION NewDialog()
DEFINE BUTTON OF oBar PROMPT "Modal" + CRLF + "Dialog" CENTER ACTION NewDialog( .t. )
oWnd:SetFont( oFont )
ACTIVATE WINDOW oWnd
RELEASE FONT oFont
return nil
//----------------------------------------------------------------------------//
static function ChildWindow()
local oWnd
DEFINE WINDOW oWnd MDICHILD OF WndMain() TITLE "MDI CHILD WINDOW" COLOR CLR_BLACK, CLR_WHITE
CreateGets( oWnd )
oWnd:bGotFocus := { || oWnd:Update() }
ACTIVATE WINDOW oWnd
return nil
//----------------------------------------------------------------------------//
static function NewDialog( lModal )
local oDlg
DEFAULT lModal := .f.
DEFINE DIALOG oDlg SIZE 460, 260 PIXEL TRUEPIXEL FONT WndMain():oFont ;
TITLE If( lModal, "MODAL DIALOG", "NON-MODAL DIALOG" )
oDlg:bGotFocus := { || oDlg:Update() }
if lModal
CreateGets( oDlg )
ACTIVATE DIALOG oDlg CENTERED
else
ACTIVATE DIALOG oDlg CENTERED NOMODAL ON INIT CreateGets( oDlg )
endif
return nil
//----------------------------------------------------------------------------//
static function CreateGets( oWnd )
local nRow
nRow := 60
@ nRow, 30 GET aStr[ 1 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 2 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 3 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
nRow += 35
@ nRow, 30 GET aStr[ 4 ] SIZE 400,32 PIXEL OF oWnd CHRGROUP CHR_WIDE UPDATE
return nil
//----------------------------------------------------------------------------//
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
Re: Unicode malfunction according to modal / nomodal format
Thank you for your quick reply.
The solution you provided was effective.
However, if you install various controls besides TGET Control
It will malfunction like before.
It seems to have avoided the bug with time difference.
It can be a useful tip for a very simple screen design.
Let's wait for more bug-resolved products.
Thank you.
The solution you provided was effective.
However, if you install various controls besides TGET Control
It will malfunction like before.
It seems to have avoided the bug with time difference.
It can be a useful tip for a very simple screen design.
Let's wait for more bug-resolved products.
Thank you.
Re: Unicode malfunction according to modal / nomodal format
When is Unicode malfunction possible?
- richard-service
- Posts: 583
- Joined: Tue Oct 16, 2007 8:57 am
- Location: New Taipei City, Taiwan
- Contact:
Re: Unicode malfunction according to modal / nomodal format
Hi
My program
Change to
use Only Dialog input Chinese fine.
Change MDI and input Chinese not work. input "新" show "送"
Any solution?
My program
Code: Select all
REDEFINE GET ::oEX_WHO VAR ::cEX_WHO ID 101 OF ::oDlg UPDATE CHRGROUP CHR_WIDE
ACTIVATE DIALOG ::oDlg CENTER
Code: Select all
DEFINE WINDOW go31001Wnd FROM 0, 0 TO 0, 0
...
DEFINE DIALOG ::oDlg RESOURCE ::cResName FONT oFont BRUSH oBrush TRANSPARENT OF go31001Wnd
REDEFINE GET ::oEX_WHO VAR ::cEX_WHO ID 101 OF ::oDlg UPDATE CHRGROUP CHR_WIDE
ACTIVATE DIALOG ::oDlg NOWAIT
go31001Wnd:bGotFocus := { || go31001Wnd:Update() }
ACTIVATE WINDOW go31001Wnd CENTER
use Only Dialog input Chinese fine.
Change MDI and input Chinese not work. input "新" show "送"
Any solution?
Last edited by richard-service on Sun Jul 21, 2019 4:59 am, edited 1 time in total.
Regards,
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: Unicode malfunction according to modal / nomodal format
Can you please try
Code: Select all
DEFINE DIALOG ....
// Define Gets and other controls
ACTIVATE DIALOG oDlg AS MDICHILD
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
- richard-service
- Posts: 583
- Joined: Tue Oct 16, 2007 8:57 am
- Location: New Taipei City, Taiwan
- Contact:
Re: Unicode malfunction according to modal / nomodal format
I change tonageswaragunupudi wrote:Can you please tryCode: Select all
DEFINE DIALOG .... // Define Gets and other controls ACTIVATE DIALOG oDlg AS MDICHILD
Code: Select all
ACTIVATE DIALOG ::oDlg AS MDICHILD ;
ON INIT ( oThis:oDlg:Move(0,0) ) ;
VALID !paOpenWnd[IS_WSE31002]
Regards,
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
- nageswaragunupudi
- Posts: 8017
- Joined: Sun Nov 19, 2006 5:22 am
- Location: India
- Contact:
Re: Unicode malfunction according to modal / nomodal format
Please reproduce the error.log.
Do you have the problem in mdi-dialog only or in normal dialogs also?
Do you have the problem in mdi-dialog only or in normal dialogs also?
Regards
G. N. Rao.
Hyderabad, India
G. N. Rao.
Hyderabad, India
- richard-service
- Posts: 583
- Joined: Tue Oct 16, 2007 8:57 am
- Location: New Taipei City, Taiwan
- Contact:
Re: Unicode malfunction according to modal / nomodal format
nageswaragunupudi wrote:Please reproduce the error.log.
Do you have the problem in mdi-dialog only or in normal dialogs also?
Code: Select all
ACTIVATE DIALOG ::oDlg NOWAIT ;
ON INIT ( oThis:oDlg:Move(0,0) ) ;
VALID !paOpenWnd[IS_WSE31001]
Code: Select all
ACTIVATE DIALOG ::oDlg AS MDICHILD ;
ON INIT ( oThis:oDlg:Move(0,0) ) ;
VALID !paOpenWnd[IS_WSE31001]
Regards,
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
- richard-service
- Posts: 583
- Joined: Tue Oct 16, 2007 8:57 am
- Location: New Taipei City, Taiwan
- Contact:
Re: Unicode malfunction according to modal / nomodal format
Hi Mr.Rao
Look it.
not work=> Child Window+Resource Dialog( ACTIVATE DIALOG ::oDlg NOWAIT )
Work OK=> Child Window+Resource Dialog( ACTIVATE DIALOG ::oDlg NOWAIT ) and I Open another Resource Dialog for New/Edit data
Look it.
not work=> Child Window+Resource Dialog( ACTIVATE DIALOG ::oDlg NOWAIT )
Work OK=> Child Window+Resource Dialog( ACTIVATE DIALOG ::oDlg NOWAIT ) and I Open another Resource Dialog for New/Edit data
Regards,
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
- richard-service
- Posts: 583
- Joined: Tue Oct 16, 2007 8:57 am
- Location: New Taipei City, Taiwan
- Contact:
Re: Unicode malfunction according to modal / nomodal format
Any solution?nageswaragunupudi wrote:Please reproduce the error.log.
Do you have the problem in mdi-dialog only or in normal dialogs also?
Regards,
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit
Richard
Harbour 3.2.0dev (r1904111533)/xHarbour 1.2.3 Intl. (SimpLex) (Build 20180818) => Borland C++ v7.4
xHarbour 0.99.71 (SimpLex) => Borland C++ v5.5
MySQL v5.7 /ADS v12
Harbour 3.2.0dev (r1603181642) => Borland C++ v7.4 64bit