相关疑难解决方法(0)

Swing的计时器中"quick"的含义是什么?

Java教程:

请注意,Swing计时器的任务是在事件派发线程中执行的.这意味着任务可以安全地操作组件,但这也意味着任务应该快速执行.如果任务可能需要一段时间才能执行,那么请考虑使用SwingWorker替代或替代计时器.

"快速"是什么意思?我的意思是不准确,不到一分钟很快或者什么?

例如,如果我想用一些面板制作动画(1分钟),通过移动它们,改变它们的透明度......并且用户只是看到面板而不能使用它们(没有我/ O),现在Timer是这种情况的好主意吗?

java swing timer timertask

14
推荐指数
3
解决办法
352
查看次数

从 Java 中的另一个类调用重绘?

我可能做错了,所以请善待。我正在开发一个 Java 游戏,我正处于测试角色移动/动画的阶段。

“人”可以在网格上左右上下移动。绘制网格的类是 gamePanel 类。按钮位于 gameControlPanel 类中。

我有一个按钮,可以在网格上生成一个人。然后我有一个按钮可以左右上下移动这个人。

当按下向上移动按钮时,它会从 person 类调用向上移动方法。(目前,我一次只测试一个“人”。)在该方法中是以下代码......

int move = 10;
while(move!=0)
{
    setTopLeftPoint(new Point((int)getTopLeftPoint().getX(),
                              (int)getTopLeftPoint().getY() - 3));

    try
    {
        Thread.sleep(300);
    } catch (InterruptedException e)
    {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }   
    move-=1;
}
Run Code Online (Sandbox Code Playgroud)

问题是我似乎无法从 Person 类中调用 gamePanel 类的重绘方法。为了解决这个问题,我在 gamePanel 类中创建了一个计时器,它每 20 毫秒重绘一次。

当我在人生成后按下向上按钮时,该按钮保持按下状态,直到完成 while 循环的循环,然后人的圆形表示显示在上面的网格方块中。

我会尽力回答有关此的任何问题。

java animation swing multithreading timer

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

我可以在核心Java中使用什么作为Android中Async Task的替代方案

我在android中创建了一个应用程序.现在我想使用PlayN创建一个Web版本.我想要的是将所有特定于android的代码替换为普通的java代码.在Android版本中我使用Async任务.我可以用什么代替呢?

java android android-asynctask playn

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

SwingWorker 得到结果

我有一个 SwingWorker,它在后台执行一些计算(这些操作位于重写的doInBackground()方法中)。所以,我也用这个execute()方法来开始计算。当这些计算完成后我怎样才能得到结果?

java swing swingworker

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

使用Java实现工作站锁监听器

当我们同时按下 WIN_HOME+L 键时,窗口被锁定。我们可以找到很多在 VB 中监听窗口锁定事件的好例子。但我正在为 Java 做窗口锁定侦听器。我做了一些研究并制作了一个侦听窗口锁定事件的侦听器程序。它有两个界面和一个带有JFrame的主程序,并使用JNA库。

WindowUser32.java

public interface WindowUser32 extends User32
{   public static final WindowUser32 MYINSTANCE = (WindowUser32) Native.loadLibrary("user32",  WindowUser32.class, W32APIOptions.UNICODE_OPTIONS);
public int SetWindowLong(WinDef.HWND hWnd, int nIndex, Callback callback);
}
Run Code Online (Sandbox Code Playgroud)

窗口监听器.java

public interface WindowListener extends StdCallCallback
{
public LRESULT callback(HWND hWnd, int uMsg, WPARAM uParam, LPARAM lParam);
}
Run Code Online (Sandbox Code Playgroud)

和主类LockListener.java

public class LockListener
{

public static void main(String[] args)
    {   
        JFrame frame = new JFrame();
    frame.setVisible(true);

    HWND hwnd = new HWND();
    hwnd.setPointer(Native.getWindowPointer(frame));

    Wtsapi32.INSTANCE.WTSRegisterSessionNotification(hwnd, Wtsapi32.NOTIFY_FOR_ALL_SESSIONS);

    WindowListener listener = new …
Run Code Online (Sandbox Code Playgroud)

java swing jna

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

java多线程

我正在使用netbeans 6.8.如果正在播放声音文件,jframe上的按钮在播放声音文件时不起作用.用户仍然可以在播放时按下按钮.我试图找到它,但代码非常复杂.使用Main implements runnable{} Multithread这个问题.

java audio multithreading button jframe

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