设置一个标志,当点击超过固定的次数后为FALSE,小于则为TRUE.

解决方案 »

  1.   

    进度条,加载完毕后,显示
    设置标志位,点击后设为false
      

  2.   

    楼上各位:设标志???每次点击应该是不同的aplication,设标志难道能在不同的aplicaiton中传递!=================
    还请明示!
      

  3.   

    忽然想到:java里能不能将鼠标置为漏斗,使之处于等待状态,不能再重复点击!===============
    可以吗?用那个函数?
      

  4.   

    怎么搞的难道没人用swing吗?
      

  5.   

    setCorsor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR))
      

  6.   

    setCursor(Cursor.getPredefinedCursor(Cursor.WAIT_CURSOR))
      

  7.   

    启动的时候做个splash界面不可以吗?那些大型swing做的软件都这样
      

  8.   

    to jigsaw(jigsaw) 
    我做了splash,可不知道我的splash出来还是要3、4s,然后再出来我的主界面to qiyongjun2003(风也悄悄) 
    我这样做了,但好像setCorsor()只是container用的,所以当我做了splash后,那个漏斗只在splash那个小界面上有而我的install.exe还是可以再点呀=====================================
    我记得好像有些大型swing软件,在多次开启程序后可以自动地将多余的退出,这是怎么做的?????????????????
      

  9.   

    我不明白为什么楼上n人都是楼上的观点???
    是不是我没说清楚??
    ===================================
    我有一个install.exe的swing程序,我要作的目的是防止用户重复点击install.exe,因为这样会出来n个窗口!
    ===================================
    因为每一次点击应该是启动一次virtual machine,不同的virtual machine怎么能共享同一个静态变量???不明白到底是怎么做的!
    ===================================
    读config文件(也是设一个标志)可以解决,可那不是最好的办法!
      

  10.   

    哦看看jedit的代码吧  守住一个端口 这样就可以避免两次运行了
      

  11.   

    Win的应用有检查是否运行当前的实例这个功能,在Java当中还真不知道,不知道java的进程管理函数有没有这样的方法来判断。问了一位朋友,他说有做过,用绑定某一个指定的端口,然后判断在绑定端口的时候有异常就退出而不运行了,或者给个提示信息出来就行了,如何?
      

  12.   

    我觉得,有以下两个方法
    1。你在启动的时候,将你的Installer.exe的属性设置为只读,然后在程序中判断是否为只读属性,然后启动程序。这样的话需要你在结束的时候,解除该文件的只读属性。
      

  13.   

    java的进程管理函数有没有呢?端口的解决看看行不;)import java.io.IOException;
    import java.net.ServerSocket;
    import java.net.Socket;/**
     * <p>Title: Java Applet And Application</p>
     * <p>Description: Java Applet And Application</p>
     * <p>Copyright: Copyright (c) 2002</p>
     * <p>Company: Beyond DayBreak Office</p>
     * @author YuLimin
     * @version 1.0
     */public class RunOnlyOnce
    {
        private ServerSocket serverSocket;
        private Socket socket;
        int port = 2008;
        public RunOnlyOnce()
        {
        }    //测试打开端口并退出:java RunOnlyOnce exit
        //测试打开端口并占用:java RunOnlyOnce
        public static void main(String[] args)
        {
            RunOnlyOnce runOnlyOnce1 = new RunOnlyOnce();
            if(runOnlyOnce1.beginRun())
            {
                //执行程序的加载操作
                System.out.println("执行程序的加载操作");
            }
            else
            {
                //结束程序去掉端口的监听!
                System.out.println("结束程序去掉端口的监听!");
                runOnlyOnce1.endRun();
            }
            if(args.length > 0)
            {
                System.out.println("关闭" + runOnlyOnce1.port + "端口!");
                runOnlyOnce1.endRun();
            }
        }    public void endRun()
        {
            try
            {
                if(socket != null)
                {
                    socket.close();
                }
                if(serverSocket != null)
                {
                    serverSocket.close();
                }
            }
            catch(IOException e)
            {
                e.printStackTrace();
            }
        }    public boolean beginRun()
        {
            try
            {
                serverSocket = new ServerSocket(port);
                System.out.println("打开" + port + "端口并进行监听!");
                socket = serverSocket.accept();
                return true;
            }
            catch(IOException e)
            {
                System.out.println(port + "端口已经被占用!");
                //e.printStackTrace();
                return false;
            }
            /*
                    while(true)
                    {
                        try
                        {
                            //socket = serverSocket.accept();
                            System.out.println("");
                        }
                        catch(Exception e)
                        {
                            System.out.println(e);
                        }
                    }
             */
        }
    }
      

  14.   

    原来你要的是系统功能,用JAVA似乎读写config文件是最好最简单的了
      

  15.   

    如 YuLimin(阿敏当兵) 所示,用 Socket实现一个服务器,控制程序之运行一个实例
      

  16.   

    YuLimin(阿敏当兵):java的进程管理函数还没有找到,估计可能没有!由于客户的机器上还跑了别的程序,我不敢肯定如port=2008:是否已经被别的程序所监听,所以像监听端口这种方法还需再考虑!