小编Ste*_*eod的帖子

如何将NSString转换为NSData?

我有这行代码将NSString转换为NSData:

NSData *data = [NSData dataWithBytes:[message UTF8String] length:[message lengthOfBytesUsingEncoding:NSUTF8StringEncoding]];
Run Code Online (Sandbox Code Playgroud)

如何在Unicode而不是UTF8中执行此操作?我的消息可能包含西里尔字符或变音符号.

unicode cocoa nsstring nsdata

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

找到图像中最常见的颜色

如何使用PHP查找图像中最常见的颜色?

php gd colors

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

有没有人使用Swing的"swingx"扩展?

我看过这里提到过的"swingx".

但是,每次我尝试访问该网站时:

http://swinglabs.org/

它失败了!这仍然是一个积极,可行的项目吗?或者它已过时并被遗弃?

java swing swingx

7
推荐指数
3
解决办法
5776
查看次数

如何安全地解决此Java上下文类加载器问题?

我的数百名用户中只有一个在启动Java桌面应用程序时遇到问题.只有三分之一的时间才开始.另外三分之二的时间在启动时抛出NullPointerException:

Exception in thread "AWT-EventQueue-0" java.lang.NullPointerException
    at java.util.Hashtable.put(Hashtable.java:394)
    at javax.swing.JEditorPane.registerEditorKitForContentType(JEditorPane.java:1327)
    at javax.swing.JEditorPane.registerEditorKitForContentType(JEditorPane.java:1309)
    at javax.swing.JEditorPane.loadDefaultKitsIfNecessary(JEditorPane.java:1387)
    at javax.swing.JEditorPane.getKitTypeRegistry(JEditorPane.java:1344)
    at javax.swing.JEditorPane.getEditorKitClassNameForContentType(JEditorPane.java:1340)
    at javax.swing.JTextPane.<init>(JTextPane.java:76)
    at myapp.Launcher$1.run(Launcher.java:13)
    at java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:209)
    at java.awt.EventQueue.dispatchEvent(EventQueue.java:633)
    at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:296)
    at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:211)
    at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:201)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:196)
    at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:188)
    at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
Run Code Online (Sandbox Code Playgroud)

我已经按照堆栈跟踪找到原因

Thread.currentThread().getContextClassLoader()
Run Code Online (Sandbox Code Playgroud)

在JEditorPane中返回null.

谷歌搜索显示,这是一个零星的,非常罕见的,神秘的问题,影响了一些人.

我的问题是,作为一种解决办法,我能做些什么?如果我在创建EditorPane之前调用它,这可能会有效:

Thread.currentThread().setContextClassLoader(MyClass.class.getClassLoader());
Run Code Online (Sandbox Code Playgroud)

但我并不像我想的那样真正理解类加载器(并且我试图更好地理解它们).我觉得改变EDT中的contextClassLoader可能会产生不良影响.

任何想法我能做什么?

编辑:我与熟悉Java ClassLoaders的人有一些通信.这似乎是一个模糊的ClassLoader竞争条件.也就是说,Java中的一个错误.

java classloader contextclassloader

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

如何检查JavaScript参数是否为数字?

我正在做一些故障排除,并希望添加一个检查,函数的参数是一个数字.我该怎么做呢?

像这样......

function fn(id) {
    return // true iff id is a number else false
}
Run Code Online (Sandbox Code Playgroud)

更好的是,如果我可以检查参数是一个数字和一个有效的整数.

javascript

7
推荐指数
2
解决办法
8187
查看次数

如何使Java Swing动画更流畅

我正在用Java创建一个动画幻灯片过渡,它在我当前的MacBook Pro型号以及我的一年前的iMac上,在Java 6,7和8上都是不稳定的.

我该怎么做才能让这个动画在Mac OS X上对用户来说更流畅?

import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;

public class ScratchSpace {

    public static void main(String[] args) {
        AnimatedPanel panel = new AnimatedPanel();

        JFrame frame = new JFrame();
        frame.setContentPane(panel);
        frame.pack();
        frame.setLocationRelativeTo(null);
        frame.setVisible(true);

        panel.animate();
    }


    public static class AnimatedPanel extends JPanel {

        private float progress = 0.0f; // a number between 0.0 and 1.0

        public AnimatedPanel() {
            setPreferredSize(new Dimension(800, 600));
            setOpaque(true);
        }

        public void animate() {
            final int animationTime = 1000;
            int framesPerSecond = 30; …
Run Code Online (Sandbox Code Playgroud)

java animation swing

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

使用document.location.href保存客户端数据时,如何向浏览器建议文件名?

我正在尝试将HTML5画布导出为PNG文件,以便将其存储在用户的计算机上.

以下代码段正确保存图像.

document.location.href = canvas.toDataURL("image/png").replace("image/png", "image/octet-stream");
Run Code Online (Sandbox Code Playgroud)

但是,在Mac OS X上使用Chrome时,它始终保存为"下载".在Safari中,它被称为"未知".Firefox给它一个gobbledygook名称.

我可以向浏览器建议使用的名称,例如"exportedImage.png"吗?

javascript html5 canvas

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

在Java中将图像转换为2色

我想使用Java将图像转换为2色,黑色和白色.我正在使用以下代码转换为灰度:

    ColorConvertOp op = new ColorConvertOp(
             ColorSpace.getInstance(ColorSpace.CS_GRAY), null);
    BufferedImage grayImage = op.filter(image, null);
Run Code Online (Sandbox Code Playgroud)

但我不知道如何修改它以转换为黑白.

java image-processing

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

有没有办法以编程方式访问OSX系统字典?

使用Objective-C和Cocoa API,如何搜索"dog"的OSX系统字典定义并检索结果以便我可以显示它们?

macos xcode cocoa dictionary objective-c

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

Windows 7上的JComboBox具有渲染工件

当我在Windows 7上使用JComboBox时,四个角的每个角都有一个与父组件的背景颜色不匹配的像素.

在Windows 8中,这个问题不会发生(尽管这可能是因为在Windows 8中,JComboBox被渲染为完美的矩形).它也不会发生在OS X上.

我该怎么做才能使角落像素让父​​组件的背景颜色通过?

这是显示问题的图像:

在此输入图像描述

这是我正在使用的一个独立的代码示例:

import com.sun.java.swing.plaf.windows.WindowsLookAndFeel;

import javax.swing.*;
import java.awt.*;

public class Main {

    public static void main(String[] args) {
        SwingUtilities.invokeLater(new Runnable() {
            public void run() {
                try {
                    UIManager.setLookAndFeel(new WindowsLookAndFeel());
                } catch (Exception e) {
                    e.printStackTrace();
                }

                JPanel contentPane = new JPanel();
                contentPane.setBackground(Color.WHITE);

                JComboBox<String> comboBox = new JComboBox<String>(new String[]{"One", "Two"});
                contentPane.add(comboBox);

                JFrame frame = new JFrame("JComboBox Test");
                frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
                frame.setContentPane(contentPane);
                frame.pack();
                frame.setLocationRelativeTo(null);
                frame.setVisible(true);
            }
        });
    }
}
Run Code Online (Sandbox Code Playgroud)

java swing jcombobox

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