Dialog from a PJC

I try to implement a PJC in a Froms90 (Application Server90) Bean-Area. Now i try to show a standart java input-Dialog. I don't know how to get the contentPane of the PJC (see the attached code).
I hope you can help me.
cu
Martin
here the code:
package oracle.forms.demos.beans;
import java.applet.*;
import java.awt.*;
import java.awt.event.*;
import java.util.*;
import java.text.*;
import javax.swing.*;
import oracle.ewt.lwAWT.*;
import java.awt.geom.*;
import java.awt.print.PrinterJob;
import java.awt.print.*;
//Class
public class TickerApplet
extends LWComponent
implements Runnable,Printable
//Constructor
public TickerApplet()
initMouseDrag();
setLayout(new BorderLayout());
final JButton bn1 = new JButton("Drucken");
bn1.addActionListener(new ActionListener() {
               public void actionPerformed(ActionEvent e){     
//String ret = (String) JOptionPane.showInputDialog( getContentPane(), "Gewünschte Erweiterung eingeben (1-14)");
JOptionPane.showInternalConfirmDialog(null, "please choose one", "information",JOptionPane.YES_NO_CANCEL_OPTION, JOptionPane.INFORMATION_MESSAGE);
add (BorderLayout.SOUTH,bn1);
}

Hi Martin
It's not very clear to me what are you trying to achieve.
From your code ,I see that you are trying to print something in another execution thread(because your implements Runnable).
You don't need to show a java button in a bean area.
you can simply use a class wich extends oracle.forms.ui.VBean.. The bean_Area should have the implementation class setted to your class.
The comunication between the any push_buttton from Forms,and your Vbean can be done through set_custom_property,get_custom_property Forms built_ins.
This way,you can use the push_button from Forms like ussual,and implement in java any custom action you need.
Sandu

Similar Messages

  • How to stop the Dialog from being dragged

    I was hoping that someone could tell me when calling a Dialog from Jframe, a how to stop the Dialog from being dragged
    while a dialog is showing.
    When it is visible I can still click and drag the Dialog
    I want to set it so you can not drag it until the dialog has be closed.

    If you don't have access to the parent frame, a "hack" that usually works:
    Frame frame = Frame.getFrames()[0];
    if (null != frame && frame instanceof JFrame){
    JFrame jf = (JFrame)frame;
    JDialog jd = new JDialog(jf, "title");
    ... code here ...
    As each JFrame (or Frame) is opened, its stored in the array of Frames that you can get. Same thing with Dialog.getDialogs(). Almost always, at least so far for me I've never had this problem, the [0] index is the main window opened, or the parent/top frame. I'd put the check in there to be safe and make sure its a JFrame and usually you'll only have the one JFrame.

  • How can I open "Place..." dialog from my plugin?

    Hello All,
    There is a "Place..." item in  "File -> ...". If we can click on "Place...",  "Place" dialog will open and asks for .ai file to place the whatever the art is there in that file in the current document. Right.
    Now what I want is, if I click on one of the button in my plugin UI, "Place" dialog will open and art will be drawn in the current document.
    I looked into the API documentation and found AIPlacedSuite::ExecPlaceRequest( ) function, but no use.
    How can I open "Place" dialog from my plugin?

    The SDK does not provide any calls to open the Place dialog directly.
    You have a few potential solutiuons, however.
    A. Implement your own file dialog box, and use the Place suite. Which I think is perhaps the most elegant solution.
    B. Programitcally create an action that opens the Place dialog. You can record an action that does this to see what file would have to be written (see "Insert Menu Item..." then type "Place", enter while recording). Then you could call the action with the Action suite.
    C. The dialog could be opened using the scripting capabilites (for instance AppleScript). Your program could then write/call the AppleScript. I know it can be done with AppleScript, and I suspect other scripting languages such as Java might be able to do it.
    Hope this helps.

  • "DEADLOCK" when showing dialog from RMI-callback.

    Hi!
    Today is the 10th day (full time) that I've been searching for a solution in Java Forums and Internet, but I couldn't find anything that helps me. Help is extremely appreciated, otherwise I'll go crazy! :-)
    The problem is that RMI-callback thread "somehow blocks" the Event Dispatch Thread.
    I want to do following:
    1) I push the button in the client (btDoSomething)
    (MOUSE_RELEASED,(39,14),button=1,modifiers=Button1,clickCount=1 is automatically pushed onto EventQueue)
    2) btDoSomethingActionPerformed is invoked
    3) inside of it I make a call to RMI-server (server.doSomething())
    4) from this server method I invoke RMI-callback back to the client (client.askUser())
    5) in the callback I want to display a question to the user (JOptionPane.showConfirmDialog)
    6) user should answers the question
    7) callback returns to server
    8) client call to the server returns
    9) btDoSomethingActionPerformed returns and everybody is happy :-)
    This works normally in normal Client, that means, while a button is pushed, you can show Dialogs, but with RMI callback I get problems.
    I just made a small client-server sample to simulate real project. What I want to achieve is that client invokes server method, server method does something, but if server method doesn't have enough information to make the decision it needs to do call back to the client and wait for input, so the user gets an JOptionPane.
    Here is my callback method:
        /** this is the remote callback method, which is invoked from the sevrer */
        public synchronized String askUser() throws java.rmi.RemoteException {
            System.out.println("askUser() thread group: " + Thread.currentThread().getThreadGroup());
            System.out.println("callback started...");
            try {
                SwingUtilities.invokeLater(new Runnable() {
                    public void run() {
                        System.out.println("My event started...");
                        JOptionPane.showConfirmDialog(parentFrame, "Are you OK?", "Question", JOptionPane.YES_NO_OPTION);
                        System.out.println("My event finished.");
            }catch (Exception e) {
                e.printStackTrace();
            try {
                Thread.currentThread().sleep(10000);
            }catch (Exception e) {
                e.printStackTrace();
            System.out.println("callback finished.");
            return "Yo!"; // just return anything
        }Here in this sample I let the callback thread sleep for 10 seconds, but in real project I let it sleep infinitely and I want to wake it up after the user has answered JOptionPane. But I have the DEADLOCK, because event queue is waiting for callback to finish and doesn't schedule the "showing dialog" event which contains the command for waking up the callback thread.
    I looked very precisely when the event queue starts again to process events: it is precisely then when btDoSomethingActionPerformed is finished.
    When I'm not accessing GUI inside of the callback, this callback mechanism works perfectly, but as soon as I want to show the dialog from inside of the RMI-callback method, the "AWT Event Dispatch Queue" is somehow frozen until RMI-callback thread is finished (and in turn btDoSomethingActionPerformed terminates) . I cannot explain this weird behaviour!!!
    If I don't use SwingUtilities.invokeLater (I know this shoudn't be done outside of Event Dispatch Thread), but access the GUI directy, my JOptionPane is shown, but is not painted (it is blank gray) until callback thread returns.
    Why showing (or painting) of dialog is not done until btDoSomethingActionPerformed is finished?
    I also tried to spawn a new Thread inside of main RMI-callback thread, but nothing changed.
    I also tried the workaround from some older posting to use myInvokeLater:
        private final static ThreadGroup _applicationThreadGroup = Thread.currentThread().getThreadGroup();
        public void myInvokeLater(final Runnable code) {
            (new Thread(_applicationThreadGroup, new Runnable() {
                public void run() { SwingUtilities.invokeLater(code); }
            ).start();
        }but this didn't help either.
    Then I tried to spawn a new Thread directly from the Client's constructor, so that I'm sure that it belongs to the main appplication thread group. I even started that thread there in the constructor and made it wait for the callback. When callback came in, it would wake up that sleeping thread which should then show the dialog. But this did't help either.
    Now I think that it is IMPOSSIBLE to solve this problem this way.
    Spawning a new Process could work I think, but I'm not really sure if I want do to that.
    I know I could make a solution where server method is invoked and if some information is missing I can raise custom exception, provide the input on client side and call the same server mathod again with this additional data, but for that I need to change server RMI interfaces, etc... to fit in this concept. I thought callback would much easier, but after almost 10 days of trying the callback...I almost regreted it :-(
    Is anyone able to help?
    Thank you very much!
    Please scroll down for the complete sample (with build and run batch files), in case someone wants to try it. Or for the time being for your convenience you can download the whole sample from
    http://www.onlineloop.com/~tornado/download/rmi_callback_blocks_gui.zip
    ######### BEGIN CODE ####################################
    package callbackdialog;
    public interface ICallback extends java.rmi.Remote {
        public String askUser() throws java.rmi.RemoteException;
    package callbackdialog;
    public interface IServer extends java.rmi.Remote {
        public void doSomething() throws java.rmi.RemoteException;
    package callbackdialog;
    import java.rmi.Naming;
    public class Server {
        public Server() {
            try {
                IServer s = new ServerImpl();
                Naming.rebind("rmi://localhost:1099/ServerService", s);
            } catch (Exception e) {
                System.out.println("Trouble: " + e);
        public static void main(String args[]) {
            new Server();
    package callbackdialog;
    import java.rmi.Naming;
    public class ServerImpl extends java.rmi.server.UnicastRemoteObject implements IServer {
        // Implementations must have an explicit constructor
        // in order to declare the RemoteException exception
        public ServerImpl() throws java.rmi.RemoteException {
            super();
        public void doSomething() throws java.rmi.RemoteException {
            System.out.println("doSomething started...");
            try {
                // ask the client for the "missing" value via RMI callback
                ICallback client = (ICallback)Naming.lookup("rmi://localhost/ICallback");
                String clientValue = client.askUser();
                System.out.println("Got value from callback: " + clientValue);
            }catch (Exception e) {
                e.printStackTrace();
            System.out.println("doSomething finished.");
    package callbackdialog;
    import java.rmi.server.RemoteStub;
    import java.rmi.server.UnicastRemoteObject;
    import java.rmi.registry.Registry;
    import java.rmi.registry.LocateRegistry;
    import java.rmi.Naming;
    import javax.swing.JOptionPane;
    import javax.swing.SwingUtilities;
    import javax.swing.JFrame;
    public class Client extends javax.swing.JFrame implements ICallback {
        private final JFrame parentFrame = this;
        private Registry mRegistry = null;
        private RemoteStub remoteStub = null;
        private IServer server = null;
        private final static ThreadGroup _applicationThreadGroup = Thread.currentThread().getThreadGroup();
        /** Creates new form Client */
        public Client() {
            initComponents();
            System.out.println("Client constructor thread group: " + Thread.currentThread().getThreadGroup());
            try {
                server = (IServer)Naming.lookup("rmi://localhost/ServerService");
                // register client to the registry, so the server can invoke callback on it
                mRegistry = LocateRegistry.getRegistry("localhost", 1099);
                remoteStub = (RemoteStub)UnicastRemoteObject.exportObject((ICallback)this);
                Registry mRegistry = LocateRegistry.getRegistry("localhost", 1099);
                mRegistry.bind("ICallback", remoteStub);
            }catch (java.rmi.AlreadyBoundException e) {
                try {
                    mRegistry.unbind("ICallback");
                    mRegistry.bind("ICallback", remoteStub);
                }catch (Exception ex) {
                    // ignore it
            }catch (Exception e) {
                e.printStackTrace();
        /** This method is called from within the constructor to
         * initialize the form.
         * WARNING: Do NOT modify this code. The content of this method is
         * always regenerated by the Form Editor.
        private void initComponents() {
            java.awt.GridBagConstraints gridBagConstraints;
            secondTestPanel = new javax.swing.JPanel();
            btDoSomething = new javax.swing.JButton();
            getContentPane().setLayout(new java.awt.GridBagLayout());
            setDefaultCloseOperation(javax.swing.WindowConstants.DISPOSE_ON_CLOSE);
            setTitle("RMI-Callback-GUI-problem sample");
            addWindowListener(new java.awt.event.WindowAdapter() {
                public void windowClosing(java.awt.event.WindowEvent evt) {
                    formWindowClosing(evt);
            secondTestPanel.setLayout(new java.awt.GridBagLayout());
            btDoSomething.setText("show dialog");
            btDoSomething.addActionListener(new java.awt.event.ActionListener() {
                public void actionPerformed(java.awt.event.ActionEvent evt) {
                    btDoSomethingActionPerformed(evt);
            gridBagConstraints = new java.awt.GridBagConstraints();
            gridBagConstraints.gridx = 0;
            gridBagConstraints.gridy = 3;
            gridBagConstraints.insets = new java.awt.Insets(10, 0, 0, 0);
            secondTestPanel.add(btDoSomething, gridBagConstraints);
            gridBagConstraints = new java.awt.GridBagConstraints();
            gridBagConstraints.gridx = 0;
            gridBagConstraints.gridy = 1;
            gridBagConstraints.fill = java.awt.GridBagConstraints.BOTH;
            gridBagConstraints.weightx = 1.0;
            gridBagConstraints.weighty = 1.0;
            getContentPane().add(secondTestPanel, gridBagConstraints);
            pack();
        private void btDoSomethingActionPerformed(java.awt.event.ActionEvent evt) {                                             
            System.out.println(java.awt.EventQueue.getCurrentEvent().paramString());
            try {
                server.doSomething(); // invoke server RMI method, which will do the client RMI-Callback
                                      // in order to show the dialog
            }catch (Exception e) {
                e.printStackTrace();
        private void formWindowClosing(java.awt.event.WindowEvent evt) {                                  
            try {
                mRegistry.unbind("ICallback");
            }catch (Exception e) {
                e.printStackTrace();
            setVisible(false);
            dispose();
            System.exit(0);
        /** this is the remote callback method, which is invoked from the sevrer */
        public synchronized String askUser() throws java.rmi.RemoteException {
            System.out.println("askUser() thread group: " + Thread.currentThread().getThreadGroup());
            System.out.println("callback started...");
            try {
                SwingUtilities.invokeLater(new Runnable() {
                    public void run() {
                        System.out.println("My event started...");
                        JOptionPane.showConfirmDialog(parentFrame, "Are you OK?", "Question", JOptionPane.YES_NO_OPTION);
                        System.out.println("My event finished.");
            }catch (Exception e) {
                e.printStackTrace();
            try {
                Thread.currentThread().sleep(10000);
            }catch (Exception e) {
                e.printStackTrace();
            System.out.println("callback finished.");
            return "Yo!"; // just return anything
         * @param args the command line arguments
        public static void main(String args[]) {
            java.awt.EventQueue.invokeLater(new Runnable() {
                public void run() {
                    Client client = new Client();
                    client.setSize(500,300);
                    client.setVisible(true);
        // Variables declaration - do not modify
        private javax.swing.JButton btDoSomething;
        private javax.swing.JPanel secondTestPanel;
        // End of variables declaration
    1_build.bat
    javac -cp . -d . *.java
    rmic callbackdialog.ServerImpl
    rmic callbackdialog.Client
    pause
    2_RunRmiRegistry.bat
    rmiregistry
    pause
    3_RunServer.bat
    rem java -classpath .\ Server
    java callbackdialog.Server
    pause
    4_RunClient.bat
    java callbackdialog.Client
    pause
    ######### END CODE ####################################

    I can understand that only partially, because SwingUtilities.invokeLater puts(redirects) my runnable object directly into AWT thread. The only conclusion I can draw from all things that I have tried until now , is that SwingUtilities.invokeLater(<showing the dialog>) invoked from a RMI thread somehow have lower "priority" than events coming directly from the AWT-thread and therefore it is held back until normal awt event completes (in this case BUTTON_RELEASED).
    But what I don't understand is the fact that the dialog is not shown even If I create and start a new thread from the client's constructor. This thread has nothing to do with RMI as it is in the main thread group:
        private BlockingObject dialogBlocker = new BlockingObject();
        private BlockingObject blocker = new BlockingObject();
        public Client() {
            initComponents();
            (new Thread() {
                public void run() {
                    try {
                        dialogBlocker.sleep(0);
                        System.out.println("My event started...");
                        JOptionPane.showConfirmDialog(parentFrame, "Are you OK?", "Question", JOptionPane.YES_NO_OPTION);
                        blocker.wake();
                        System.out.println("My event finished.");
                    }catch (Exception e) {
                        e.printStackTrace();
            }).start();
            ...Callback is then only used to wake up this thread which should display the dialog:
        public Object askUser() throws java.rmi.RemoteException {
            System.out.println("callback started...");
            dialogBlocker.wake();
            blocker.sleep(0);
            System.out.println("callback finished.");
            return userChoice; // return anything I don't care for now
    class BlockingObject {
        public void sleep(long timeout) {
            synchronized(this){
                try {
                    wait(timeout);
                }catch (InterruptedException e) {}
        public void wake() {
            synchronized(this){
                notifyAll();
        }In this case the dialog is shown, but it is NOT painted, so I have deadlock again. Why it is not painted?!?
    Haven't I uncouple it from RMI-Thread?
    But perhaps I'm looking at the wrong side of the whole thing.
    If I invoke server.doSomething (as ejp proposed) in a separate thread, then everything is fine (except that I cannot use this solution in my project :-( ).
    It seems that the whole problem is NOT AT ALL related to callback itself, but rather to the fact that if client invokes remote call, even dialogs can't be shown until the rmi call returns to the client.
    Thank you, Drindilica

  • Call Dialog from another dialog

    hi everyone
    can anybody tell me how can we call one dialog from another dialog..
    Is it possible...???
    if it is, how we can we do ...please tell me with example
    thanks in advance

    Is it possible...???yes
    if it is, how we can we do ...please tell me with example
    public static void main(String[] args) {
       JDialog parent;
       for (int i = 0; i < 5; i++) {
          JDialog d = new JDialog(parent, true);
          parent = d;
          d.setVisible(true);
    }

  • Calling Dialog from a dialog- size constraints

    Hi,
    I am using Jdev version 11.1.1.7.1.
    I am calling a taskflow and running it as a dialog. I have a requirement to call another taskflow which runs as dialog from this dialog. When I do so, my child dialog is restricted within the parent dialog space. If the size of my child dialog is greater than my parent dialog, I get a scroll bar on the parent dialog, and have to scroll through it to view the child dialog completely.
    Is there a way I could avoid the scroll bar or render the child dialog outside the parent space ? What setting could be used?
    Thanks in advance,
    Punin

    You can only make the parent dialog biet to give the child more room.
    Timo

  • Block dialogs from coming to front automatically if not already front app

    It's 2011, 43 years since I first used and programmed computers...
    I do a lot of writing, and I am really tired of applications (in the background) suddenly popping up dialog boxes without asking permission first, since sometimes I am typing away and the dialog box traps it, or worse: I hit the enter key just as a yes/no dialog comes up, and I have *no* idea what I said Yes to...
    Is there any way to Block dialogs from popping to the front without, say, bouncing the dock icon first?
    thanks

    Do you see a flashing Photoshop icon or button in the TaskBar if this occurs?
    If so, Windows 7 is blocking Photoshop from popping to the front, possibly because it thinks Bridge is still current.
    I don't use Bridge, so I can't tell you whether it's an improper interaction at that level, but I can say that sometimes video drivers can affect window behavior...  Check to see if your video card manufacturer has released a newer driver than the one you currently have.
    -Noel

  • Couldn't open first dialog from second dialog in a single project (VC++)

    Hai all,
      Good Day. I am very new to Visual C++. I am learning VC++ and doing practice side by side using IDE - Visual Studio 2005. In my project i created two dialogs. In
    first dialog  BARCODE_DIALOG (CBarCodeDlg) if i clicked  a button "password", i want to open a
    second Dialog DIALOG2(CPasswordDlg).  in this if i clicked main button  DIALOG2 closed at same time i want to open first Dialog and have to do changes in first dialog. 
    my problem is i closed the second dialogv by calling OnOK(). but i couldn't open first dialog. How to do?
    //For opening second dialog from first dialog:
    //CBarCodeDlg.cpp
    void CBarCodeDlg::OnBnClickedBpswd()
    // TODO: Add your control notification handler code here
    OnOK();
    m_dPswdDlg.DoModal(); // added variable public CPasswordDlg m_dPswdDlg
    //For close second dialog and do changes in first dialog
    //CPasswordDlg.cpp
    void CPasswordDlg::OnBnClickedBmain()
    OnOK();
    m_dBarCodeDlg.DoModal(); //added varible public CBarCodeDlg m_dBarCodeDlg
    if i added this 
    m_dBarCodeDlg.DoModal(); //added varible public CBarCodeDlg m_dBarCodeDlg
    getting errors.  How to call it and also i have to do changes in BarcodeDlg if clicked main button. can you plese help me to do it.

    yes david. Thanks a lot david.  i got it. but what i am doing in second dialog, i getting a string and comparing with another string. if equal then enabling another button "main". if i clicked main i want enable product number combo box
    in first dialog. how to enable it.
    You are thinking wrong about the second dialog. It should not be trying to control the first dialog. What it should do is set some internal state that the first dialog can interrogate after DoModal() returns. The simplest (bur not best OOP practice) is to
    use a public member variable, say a bool m_bSame. Then you could do
    //CBarCodeDlg.cpp
    void CBarCodeDlg::OnBnClickedBpswd()
    CPasswordDlg dlg;
    if( (dlg.DoModal() == IDOK) && dlg.m_bSame)
    // enable Combo box
    else
    // report some kind of error
    Or, even simpler, you could only allow the second dialog to return IDOK if the two strings are the same. Then you would not need the bool variable.
    Or you could put the user-entered string in a public member variable and do the test in the first dialog. Then you could create the entire second dialog in the designer, without adding any code (just add a public CString variable that is bound to an edit
    control).
    Modal dialogs are usually just information gatherers. They should bot be reaching out into the rest of the application.
    David Wilkinson | Visual C++ MVP

  • "Flash has blocked a potentially unsafe operation" - How do I stop these dialogs from appearing?!

    Is there any way to stop these error dialogs from appearing? 
    They appear on multiple websites and even if I dismiss the dialog a new one pops up every few minutes I am there.
    Don't get me wrong - I like that it blocks these kind of things and I want it to continue to do so, I just wish there was a way for it to do it silently.

    I'd like to understand this better:
    1.) Whats a URL that reproduces this problem?
    2.) What OS and Version are you using?
    3.) What Browser and Version are you using?

  • Stop warning dialog from appearing with custom error codes

    I have created a custom error file using the 'Error Code Editor', I want to disable the warning dialog that appears when my error codes are detected. How can I do this?
    <?xml version="1.0" encoding="ISO-8859-1"?> <nidocument> <nicomment> </nicomment> <nierror code="5000"> SUCCESS </nierror> <nierror code="5012"> INVALID HANDLE </nierror> </nidocument>
    I want to stop this from appearing ->

    Hi eamo2020,
    Are you passing your error cluster through to a Simple Error Handler VI (the last function to execute on your block diagram?) 
    When your custom error is flagged, is it prompting the dialog box each time?
    If this is the case, you can set the 'type of dialog' input, as a constant. You set this constant as 'no dialog', from the five options available.
    The next time you run your code, the pop up dialog won't appear and you will be able to handle your errors programmatically, instead of through the dialog box.
    I hope this helps!
    Dom C

  • How to prevent popup dialog from closing when commandbutton clicked

    Hi,
    I have a af:commandButton inside a popup dialog and the button action calls a method in backing bean. When this button is clicked I would like to run the method in backing bean and return control to the popup window. The method seem to run fine but the popup dialog closes automatically. Is there a way to prevent popup dialog from closing for this action?
    Thank you
    Kevin

    Hi Frank,
    Thanks for the link. I am not sure how to use this in my case. Following is part of what I am trying
    <af:popup ...>
    <af:dialog>
    <af:form usesUpload="true">
    <af:inputFile ..../>
    <af:commandButton text="upload" action="#{backingbean.uploadAction}"/>
    <af:outputText value="#{backingbean.filename} was successfully uploaded"/>
    </af:form>
    </af:dialog>
    </af:popup>
    When user clicks upload button I want to display a message that the file was successfully uploaded and keep the popup window open. But what happens now is once the file upload completes, the popup window closes automatically. This file upload part is not a must, user could skip doing the upload and instead input some text in a text area below (not shown in the code above). User could also just click cancel and exit the popup any time, so there is no mandatory field that I could check before closing the popup. Is there something I could do for this?
    thanks
    Edited by: user10720929 on Dec 23, 2008 10:36 PM

  • Open dialog box through PJC

    hi all
    is there any pjc demo to open the dialog box?

    hi
    yup i know, but i modified it with my requirement and its working fine with client_ole2 to choose the excel file and import it into form
    which is working perfect but here what i want to know,i did not check on client machine only i am able to see the dialog box on server machine and i am going to check on client machine ,so what i want from you just clarify
    me that it will work on client machine or not?

  • Save File dialog from dll is not appearing to the front of TestStand window

    Hi all,
    I am calling a C#.net dll from a step in TestStand sequence. A function is called which pops up a Save File dialog. This Save File dialog is appearing only behind other windows. There is an overload for the showDialog function that takes the owner form as argument. My dll doesnot have a form. I would like to know how can I pass the TestStand form as owner to this Save File dialog object.
    Thanks in advance

    Biju,
    You can build create the implement the IWin32Window interface and get the handle of TestStand window. I have created an example you can check out.
    Regards,
    Song Du
    Systems Software
    National Instruments R&D
    Attachments:
    Class1.cs ‏1 KB

  • Returning to Print dialog from Print preview?

    If, after selecting Print preview from the Print dialog, I want to go back and change something in the Print dialog like Layout, is it possible to return to the Print dialog? What I've been doing is quitting the Preview and then going back to what I wanted to print and selecting Print again, which seems inefficient.

    Hi Christopher,
    Unfortunately it's not possible. This is one of the limitations of the preview function of OSX printing. Perhaps this will be addressed in Leopard. It's pretty frustrating, I totally agree.

  • Calling Windows File Open Dialog from Forms

    Has anyone used the File Open Dialog of MS-Windows from within
    forms? How do you invoke it and how do you pass arguements (in
    and out) to communicate with it?

    GET_FILE_NAME built-in
    Description
    Displays the standard open file dialog box where the user can
    select an existing file or specify a new file.
    Syntax
    FUNCTION GET_FILE_NAME
    (directory_name VARCHAR2,
    file_name VARCHAR2,
    file_filter VARCHAR2,
    message VARCHAR2,
    dialog_type NUMBER,
    select_file BOOLEAN;
    Built-in Type unrestricted function
    Returns VARCHAR2
    Enter Query Mode yes
    Parameters
    directory_name     
    Specifies the name of the directory containing the file you want
    to open. The default value is NULL. If directory_name is NULL,
    subsequent invocations of the dialog may open the last directory
    visited.
    file_name     
    Specifies the name of the file you want to open. The default
    value is NULL.
    file_filter     
    Specifies that only particular files be shown. The default
    value is NULL. File filters take on different forms, and
    currently are ignored on the motif and character mode
    platforms. On Windows, they take the form of Write Files
    (*.WRI)|*.WRI| defaulting to All Files (*.*)|*.*| if NULL.
    On the Macintosh the attribute currently accepts a string such
    as Text.
    message     
    Specifies the type of file that is being selected. The default
    value is NULL.
    dialog_type     
    Specifies the intended dialog to OPEN_FILE or SAVE_FILE. The
    default value is OPEN_FILE.
    select_file     
    Specifies whether the user is selecting files or directories.
    The default value is TRUE. If dialog_type is set to SAVE_FILE,
    select_file is internally set to TRUE.
    ** Built-in: GET_FILE_NAME
    ** Example: Can get an image of type TIFF.
    DECLARE
    filename VARCHAR2(256)
    BEGIN
    filename := GET_FILE_NAME(File_Filter=> 'TIFF Files (*.tif)
    |*.tif|');
    READ_IMAGE_FILE(filename, 'TIFF', 'block5.imagefld);
    END;

Maybe you are looking for