2013年11月19日星期二

Ask the next question

interactive QT and Swing
 This post last edited by the thefirstz on 2013-11-05 22:42:47
project on Linux platform using the QT GUI, and contains several widget, use one of the QT QX11EmbededContainer widget embeds a written using Java Swing application form. Unfortunately, as long as the operation over Swing window ( even a mouse click ) , other widget can not receive keyboard events, such as the ListViewItem in another widget click Rename, has been in a state of waiting for input , keyboard input can not be displayed , but later found Swing all keyboard events are snatched away . If the test is more, occasionally by Xlib: unexpected async reply error message , and then hang the process of death . These issues only keyboard and mouse operation is no problem , if the other widget under the mouse right- click pop-up context menu , and then rename the class action touches the keyboard events can take it over .

ask you in improving the design of the next have any suggestions ?
------ Solution ---------------------------------------- ----
recommended QProcess open java Swing do the procedure, so it will not hang.
------ Solution ---------------------------------------- ----
If you can intercept java drawing event , I suggest java generated images directly into the Qt controls drawn from this space will java widget Qt's time to pass to java
- ---- Solution -------------------------------------------- < br>

not let the challenges in the project uncertainties Mody. .
------ For reference only -------------------------------------- -
this how you run , you do not need jvm
------ For reference only ------------------------ ---------------

Yes, achieved through jni
The new process is another program , the need to process communication.
------ For reference only -------------------------------------- -

If based on the change in the existing , still play it ?
for Gui programming are not familiar with a variety of toss
------ For reference only ------------------------- --------------
I guess you have an open java program, a program where you input-output system was taken over by the java virtual machine , just like you open a modal dialog Like modal dialog message loop , took over all events , other forms of control can not be obtained , such as modal dialog only quit, other forms can be executed.

According to this idea , when you pop the java program , you let other form is not enabled , when the java program exits, and then enabled. So there is no conflict
------ For reference only ------------------------------- --------

Oh, both sides need to interact , or else do not need to embed the form.
just opened if not grab the mouse without clicking , and later robbed .
now plan on the basis of not saved ?
------ For reference only -------------------------------------- -
this shows that it was your focus into the java program that took over the ah , you should change your java program , it becomes " non-modal dialog " , or to the adoption of inter-process communication to solve the .
------ For reference only -------------------------------------- -

how to become a non-modal Swing programs ?
------ For reference only -------------------------------------- -
how to become a non-modal Swing programs ?
------ For reference only ------------------------------------ ---
see what ~
------ For reference only --------------------------- ------------
can I ask why must embed a form that you write with Swing ?
------ For reference only -------------------------------------- -


have used an open source library Gui , only the Swing version of the open source license for us to use .
------ For reference only -------------------------------------- -
how to become a non- modal Swing program ?
------ For reference only ------------------------------------ ---
  The reply deleted by an administrator at 2013-11-11 16:04:40

------ For reference only ---------------------------------- -----
fixed up their own control program inputFocus, Results posted ~ ~

没有评论:

发表评论