小编Jon*_*onK的帖子

关闭子窗口后,UI会冻结,直到第一次单击

我正在编写一个带有工具栏颜色的下拉组件.所以我从'Swing hacks'一书中提出了想法,稍微改变了构思并添加了Swing的标准JColorChooser.行为应该遵循:我点击一个按钮,出现一个带有颜色选择器的窗口; 我选择一种颜色,然后关闭下拉窗口,按钮的文字将颜色变为所选颜色.总的来说一切正常,但有一个令人不快的错误.在这些操作之后,UI冻结,按钮甚至不接受鼠标事件,如"鼠标悬停".这发生在我点击之前.然后,UI表现为所需.

这是带有概念的代码.

import java.awt.AWTEvent;
import java.awt.Color;
import java.awt.MouseInfo;
import java.awt.Point;
import java.awt.Rectangle;
import java.awt.Toolkit;
import java.awt.event.AWTEventListener;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.awt.event.WindowAdapter;
import java.awt.event.WindowEvent;

import javax.swing.AbstractButton;
import javax.swing.JButton;
import javax.swing.JColorChooser;
import javax.swing.JComponent;
import javax.swing.JFrame;
import javax.swing.JPanel;
import javax.swing.JWindow;
import javax.swing.SwingConstants;
import javax.swing.SwingUtilities;
import javax.swing.colorchooser.AbstractColorChooserPanel;
import javax.swing.event.AncestorEvent;
import javax.swing.event.AncestorListener;
import javax.swing.event.ChangeEvent;
import javax.swing.event.ChangeListener;
import javax.swing.plaf.metal.MetalComboBoxIcon;

class DropDownComponent2 {
    private JWindow _window;
    private boolean _windowShouldBeShown = false;
    private JComponent _component;
    private AbstractButton _button;
    private JFrame _ownerFrame;

    public DropDownComponent2(JFrame …
Run Code Online (Sandbox Code Playgroud)

java swing jwindow jcolorchooser

7
推荐指数
1
解决办法
913
查看次数

Selenium - 无响应的脚本错误(Firefox)

之前已经问过这个问题,但给出的答案似乎对我没有用.问题是,当使用Selenium打开页面时,我会收到大量"无响应脚本"弹出窗口,引用不同的脚本.

当我使用没有Selenium的Firefox打开页面时,我没有错误.另外,奇怪的是,当我手动使用selenium打开页面时,它可以工作.所以我甚至无法确定问题所在.

我可以共享代码,但这样做是没有必要的.基本上会发生这样的事情:

  1. 程序从MySQLdb收集url元组
  2. 创建URLS列表
  3. 尝试使用urllib2或selenium根据特定因素打开URLS.
  4. 使用selenium打开时,每次都会创建新实例,因此:
driver = webdriver.Firefox()
driver.get(url)
do other things (either open links or get page source)
driver.close()
Run Code Online (Sandbox Code Playgroud)

据我所知,错误发生在第二步(获取网址).

我已将脚本等待条件设置为about:config到非常高的数字和0,我仍然得到错误.

有这个问题的解决方案吗?

注意,我没有打开自己的页面用于测试目的.相反,我打开第三方网站,以获取某些数据.另请注意,有时卷可能会很高(很多页面同时由不同的程序打开) - 也许这就是问题?

我现在的问题主要是我甚至无法在另一台计算机上复制问题,我只是完全迷失了.我希望其他人有类似的问题,并找到了解决方案.我有一种感觉这与Firefox中的设置有关(不是关于:config).

javascript python firefox selenium

6
推荐指数
1
解决办法
3061
查看次数

Windows Azure角色无响应

我有一个辅助角色,其中运行多个线程来处理来自客户端的连接.在负载测试期间,我们注意到该角色没有响应,并且在我们重新启动之前一直处于该状态.在visual studio调试器中查看它(通过暂停活动进程),我们可以看到许多线程在等待,但是当它被取消暂停时,就不会发生任何活动.我怎么知道是什么导致角色留在那个州?

debugging role azure azure-worker-roles

5
推荐指数
1
解决办法
1840
查看次数

附加到进程非常慢打开

当我在VS2010或VS2012中单击Attach to Process时,大约需要10分钟才能打开"Attach to Process"窗口.在等待它打开VS时没有响应,我必须从任务管理器结束进程以执行任何其他操作.任何人都可以给我一个解决这个问题的方法吗?这非常令人沮丧.

performance visual-studio-2010 attach-to-process visual-studio-2012

5
推荐指数
0
解决办法
778
查看次数

在Swing JTabbedPane中,外观并未更新

我在Java Swing中创建了一个应用程序.我提供了从菜单中更改应用程序外观的选项,但是在添加新选项卡后JTabbedPane,它没有使用新的外观进行更新.

我已经使用过这段代码:

Window windows[] = Frame.getWindows();
for(Window window : windows) {
    SwingUtilities.updateComponentTreeUI(window);
}
Run Code Online (Sandbox Code Playgroud)

java swing look-and-feel

4
推荐指数
1
解决办法
4054
查看次数

从同一个 Dockerfile 运行多个主要方法

我有一个大型 java 应用程序,在不同的类中有 5 个主要方法。我想将此应用程序作为 Docker 容器运行。从DockerHub OpenJDK Image,我启动了我的 Dockerfile,如下所示

FROM openjdk:latest
COPY . /usr/src/APP
WORKDIR /usr/src/APP`
Run Code Online (Sandbox Code Playgroud)

我想添加行来运行主要方法。没有 Docker,我使用以下几行运行应用程序

echo 'Starting App'
nohup $JAVA_HOME/bin/java .:./App.jar path.to.main.class1  >> 
/path/to/nohup/nohup.out 2>&1 &
nohup $JAVA_HOME/bin/java .:./App.jar path.to.main.class2  >> 
/path/to/nohup/nohup.out 2>&1 &
nohup $JAVA_HOME/bin/java .:./App.jar path.to.main.class3  >> 
/path/to/nohup/nohup.out 2>&1 &
nohup $JAVA_HOME/bin/java .:./App.jar path.to.main.class4  >> 
/path/to/nohup/nohup.out 2>&1 &
nohup $JAVA_HOME/bin/java .:./App.jar path.to.main.class5  >> 
/path/to/nohup/nohup.out 2>&1 &
echo 'App Started Successfully'`
Run Code Online (Sandbox Code Playgroud)

是否可以在一个 docker 容器中运行上述场景?如果可以的话,一个 Dockerfile 中只能有一条指令,ENTRYPOINT怎么办?CMD

java docker dockerfile

3
推荐指数
1
解决办法
1365
查看次数

Git提取/拉动仅在连接到特定的wifi时才起作用?

几天前,我已经克隆了一个Git存储库,并开始使用它,我们一直在wifi连接上进行工作wifi_a

有时,wifi_a它没有响应,但wifi_b通常在wifi_a没有响应时起作用。因此,有些日子我会wifi_b改用。今天是那种日子之一。

我决定要使用上游遥控器获取最新更新。但是,获取只是挂在那里。然后,我决定尝试拉。没有。坐在这里几分钟后,我得到的是:

致命:无法连接到github.com:github.com
[0:207.97.227.239]:errno =操作超时

因此,出于好奇,我检查是否wifi_a再次奏效。它做了!因此,我切换回wifi_a。我再次尝试了git fetch,它立即起作用!

我的问题是..为什么?为什么我不能使用其他wifi连接?wifi_b在等待git完成提取或超时的过程中,我可以在连接时使用网络浏览器,因此并不是我没有连接。我只是发现这种行为很奇怪,任何解释都将真正有帮助。毕竟,如果我需要做一些工作但是wifi_a很沮丧,那我就没事了!

git pull fetch wifi

1
推荐指数
1
解决办法
795
查看次数

Win32中的Sleep()会使程序无响应

基本上就是标题所说的.当用户按下该特定按钮时,我想每1秒更新一个按钮包含的文本.我已经注意到,当程序没有焦点时它可以正常工作并且文本正确刷新但是当我在程序上盘旋或者当我试图点击它的菜单时Windows告诉我该程序没有响应并询问我是否我希望它终止.当循环结束时,程序返回其正常状态.我可能已经完成的任何动作(如移动它或关闭它),而它是Sleep() -在循环之后执行.这是一些代码:

case ID_BUTTON_START:
// Code executed when pressing Start Button.
char startButtonText[30];  // Storing next loop text
 for (int i=5; i>0; i--)
    {
       sprintf(startButtonText, "Starting in ... %d", i);
       SendMessage(hwndButtonStart, WM_SETTEXT, 0, (LPARAM)(startButtonText));
       Sleep(1000);
     }
Run Code Online (Sandbox Code Playgroud)

这是正常的吗?如果不是造成这种情况的原因?

c++ winapi sleep

1
推荐指数
1
解决办法
1417
查看次数

String 类型中的方法 format(String, Object[]) 不适用于参数 (String, int, int)

好的,所以我是 Java 新手,我正在尝试制作我的第一个程序,但收到此消息,我似乎无法修复:

The method format(String, Object[]) in the type String is not applicable for the arguments (String, int, int).

这是代码:

import java.awt.*;
import java.awt.event.*;

import javax.swing.*;

public class Gui extends JFrame{
    private JPanel GamePanel;
    private JLabel statusbar;

    public Gui(){
        super("Title");
        GamePanel = new JPanel();
        GamePanel.setBackground(Color.WHITE);
        add(GamePanel, BorderLayout.CENTER);

        statusbar = new JLabel("default");
        add(statusbar, BorderLayout.SOUTH);

        HandlerClass handler = new HandlerClass();
        GamePanel.addMouseListener(handler);
    }

    class HandlerClass implements MouseListener{
        public void mouseEntered(MouseEvent event){
            //here is where the problem is!
            statusbar.setText(String.format("%d, %d", event.getX(), event.getY());
        } …
Run Code Online (Sandbox Code Playgroud)

java string

1
推荐指数
1
解决办法
1万
查看次数

类更改后元素丢失属性

我想知道,为什么更改一个元素的类(没有尝试过id),使它无法响应使用类集的函数?

js功能

function addImg(element) {
    $(element).click(function() {
        var $block = $(this).is('img') ? $(this).parent() : $(this);
        var $name  = $block.attr('id');
        $('input[name="'+$name+'"]').click();
        $('input[name="'+$name+'"]').change(function() {
            $block.css('border-color', '#cecece')
            readURL(this, $block);
        });
    });
}
Run Code Online (Sandbox Code Playgroud)

DOM

<div class="has-img">
   <a class="remove-image"> Remove Image </a>
   <img src="blalbalba.jpg" />
</div>
Run Code Online (Sandbox Code Playgroud)

js代码

$('.remove-image').click(function() {
    $(this).parent().removeClass('has-img').addClass('no-img').find('img').remove();
    $(this).remove();
});

addImg('.has-img img, .no-img');
Run Code Online (Sandbox Code Playgroud)

.removeClass('has-img').addClass('no-img')addImg('.has-img img, .no-img');功能不适用于该元素不再工作.这是为什么?

javascript jquery function

0
推荐指数
1
解决办法
103
查看次数