Phxtecno Posted May 12, 2018 Share Posted May 12, 2018 Hello, I have no success trying to show a screen mask during a PromptCallBack. After reading a value with the Prompt dialog, I need do some "heavy" work on DB, so the necessity of a showmask. I used the model: MainForm.ShowMask('Processing...'); UniSession.Synchronize(); // in MainModule is EnableSynchronousOperations := True ... "do long job"... MainForm.HideMask; But nothing happens... The prompt and callback are used in a TUniFrame, not a form, but automatic screen mask on other objects (as Buttons) works fine... Can you help ? Best regards, Marc Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 12, 2018 Share Posted May 12, 2018 Hi, Have you seen this demo?: \FMSoft\Framework\uniGUI\Demos\Desktop\SyncClientUpdate - 4 - ShowMask Best regards, Quote Link to comment Share on other sites More sharing options...
Phxtecno Posted May 12, 2018 Author Share Posted May 12, 2018 Thanks, it works now ! was necessary use ShowMask() and Hide only, without initial MainForm. does it means use the ShowMask function of the TFrame instead of the main TForm ? Quote Link to comment Share on other sites More sharing options...
Bocchi Posted May 13, 2019 Share Posted May 13, 2019 Hi, I have a similar problem showing the screen mask during the elaboration of the callback procedure called from a yesno MessageDlg opened with a button. I've disabled the button screenmask and enabled the form screenmask. I call ShowMask in callback procedure after checking the user response. The mask appears and immediatly disappear. Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 13, 2019 Share Posted May 13, 2019 4 hours ago, Bocchi said: I have a similar problem showing the screen mask during the elaboration of the callback procedure called from a yesno MessageDlg opened with a button. Hi, Have you tried as in the example above? Quote Link to comment Share on other sites More sharing options...
Bocchi Posted May 14, 2019 Share Posted May 14, 2019 Hi, Yes I did. The code is something like this procedure xxx.btnbtn1Click(Sender: TObject); begin inherited; MessageDlg('Question?',mtConfirmation, [mbYes,mbNo], CallBackProc); end; procedure xxx.CallBackProc(Sender: TComponent; Res: Integer); begin inherited; if (Res = mrNo) then Exit; ShowMask('message'); UniSession.Synchronize; code HideMask; The mask appears for less than a second before messagebox is displayed, then it disappears. I've tried this but it doesn't work. I also found someone saying that Synchronize doesn't work with callback procedure Quote Link to comment Share on other sites More sharing options...
Bocchi Posted May 21, 2019 Share Posted May 21, 2019 Up Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 21, 2019 Share Posted May 21, 2019 On 5/13/2019 at 8:22 PM, Bocchi said: I have a similar problem showing the screen mask during the elaboration of the callback procedure called from a yesno MessageDlg opened with a button. I've disabled the button screenmask and enabled the form screenmask. I call ShowMask in callback procedure after checking the user response. The mask appears and immediatly disappear. Hello, Sorry for the late reply, Can you please make a simple testcase for this, or please open a ticket in the support portal with a test case? Quote Link to comment Share on other sites More sharing options...
Bocchi Posted May 21, 2019 Share Posted May 21, 2019 Hello, Here is a very simple example of what I mean. TestCase.zip Quote Link to comment Share on other sites More sharing options...
Sherzod Posted May 21, 2019 Share Posted May 21, 2019 Hello, Ok, thanks for the testcase We will check Quote Link to comment Share on other sites More sharing options...
Andriws Luna Posted October 25, 2019 Share Posted October 25, 2019 Any news for that? Quote Link to comment Share on other sites More sharing options...
sernet Posted April 2, 2020 Share Posted April 2, 2020 Up same problem here Quote Link to comment Share on other sites More sharing options...
Hayri ASLAN Posted April 2, 2020 Share Posted April 2, 2020 Please simply add "@@" in front of your message. like MessageDlg('@@Do something?',mtConfirmation, [mbYes,mbNo], CallBackFunct); Quote Link to comment Share on other sites More sharing options...
Clipe Informática Posted October 6, 2020 Share Posted October 6, 2020 On 4/2/2020 at 10:35 AM, Hayri ASLAN said: @@ that actually showed the screen mask... can i do something to change the text on the showed mask? also, where did u find that @@ thing on the documentation? Quote Link to comment Share on other sites More sharing options...
MVakili Posted August 20, 2021 Share Posted August 20, 2021 On 5/12/2018 at 6:44 PM, Sherzod said: Hi, Have you seen this demo?: \FMSoft\Framework\uniGUI\Demos\Desktop\SyncClientUpdate - 4 - ShowMask Best regards, its a good sample Thank you Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.