小编sal*_*inx的帖子

在Java中显示JTextField的事件?

我正在实现JTextField的专用版本,并希望将其打包到自己的bean中.到目前为止豆子工作得非常好.这是我的问题:

如何检测JTextField的显示时间?因此,每次显示字段时,我都可以初始化一些图形内容.

ShowComponent事件对我不起作用.FocusGained和FocusLost工作正常.

希望有人知道解决方案.

java user-interface swing listener jtextfield

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

C++中的Tickcount和毫秒

如何从TickCounts转换为毫秒?

这是我用过的:

long int before = GetTickCount();
long int after = GetTickCount();
Run Code Online (Sandbox Code Playgroud)

我希望它在几秒钟内有所不同.

c++ winapi

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

iOS + SpriteKit:如何强制纵向模式?

我目前正在开发适用于iOS 7+和XCode 6的SpriteKit游戏.游戏应始终以纵向模式呈现.到目前为止,我已在视图控制器中实现了这些方法:

- (BOOL)shouldAutorotate {
    return NO;
}

- (NSUInteger)supportedInterfaceOrientations {
    return UIInterfaceOrientationMaskPortrait;
}
Run Code Online (Sandbox Code Playgroud)

只要我启动应用程序将我的iPad保持在纵向模式,这样就可以正常工作.在游戏过程中它不会切换方向.

但是,在应用程序启动期间以横向方向按住iPad时,游戏会以横向显示.

即使在启动期间设备以横向模式保持,如何强制应用程序以纵向模式显示?

orientation screen-orientation uiinterfaceorientation ios sprite-kit

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

如何在 Python 3.7 中向 bytearray 添加字节?

我是 Python 3.7 的新手,我正在尝试使用以下代码从串行端口读取字节。我正在使用pySerial模块并且read()函数返回bytes.

self.uart = serial.Serial()
self.uart.port = '/dev/tty/USB0'
self.uart.baudrate = 115200
self.uart.open()
# buffer for received bytes
packet_bytes = bytearray()
# read and process data from serial port
while True:
    # read single byte from serial port
    current_bytes = self._uart.read()
    if current_bytes is B'$':
        self.process_packet(packet_bytes)
        packet_bytes = bytearray()
    else:
        packet_bytes.append(current_bytes)        <- Error occurs here
Run Code Online (Sandbox Code Playgroud)

我收到以下错误:

类型错误:需要一个整数

一些想法如何解决?

python arrays pyserial python-3.x

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

如何在远程服务器上访问EJB?

我正在使用在我的子网中运行的GlassFish-3.1.2服务器(192.168.1.3:3700).我已经部署了一个包含EJB的企业应用程序,我在其中定义了一个业务方法.现在我想从我的Java应用程序客户端远程访问EJB.我如何设置JNDI resp.用于查找EJB的InitialContext对象?我如何定义属性?顺便说一句.我必须运行"asadmin enabled-secure-admin"才能使GlassFish服务器在LAN上运行.可能我还需要发送我的凭据和属性?

这是我目前的"解决方案",这似乎是完全错误的:

Properties props = new Properties();
props.setProperty("java.naming.factory.initial", "com.sun.enterprise.naming.SerialInitContextFactory");
props.setProperty("org.omg.CORBA.ORBInitialHost", "192.168.1.3");
props.setProperty("org.omg.CORBA.ORBInitialPort", "3700");
InitialContext ctx = new InitialContext(props);

TestentityFacadeRemote tfr = (TestentityFacadeRemote)ctx.lookup("java:global/TestEE/TestEE-ejb/TestentityFacadeRemote");
Run Code Online (Sandbox Code Playgroud)

当我运行这个程序时,它只是无限地等待...

任何帮助高度赞赏!

java lookup jndi glassfish

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

为什么元标记注入不适用于桌面浏览器?

我的java脚本中有以下代码:

function initScreen() {
    isMobile = (/iPhone|iPod|Android|BlackBerry/).test(navigator.userAgent);
    isTablet = (/iPad/).test(navigator.userAgent);
    if(isMobile) {
        $('<meta name="viewport" content="initial-scale=0.30, maximum-scale=0.50, minimum-scale=0.25, width=device-width, user-scalable=yes">').appendTo('head');
    } else if(isTablet) {
        $('<meta name="viewport" content="initial-scale=0.95, maximum-scale=0.95, width=device-width, user-scalable=no">').appendTo('head');
    } else {
        $('<meta name="viewport" content="initial-scale=0.80, maximum-scale=0.80, width=device-width, user-scalable=no">').appendTo('head');
    }
}
Run Code Online (Sandbox Code Playgroud)

这是我的index.html在启动时调用的:

<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
<script type="text/javascript"> 
    $(document).ready(function() {
        initScreen();
    });
</script>
</head>
Run Code Online (Sandbox Code Playgroud)

这适用于我的iPad以及基于iPhone和Android的手机.但是当我在桌面上使用firefox,chrome和safari打开时,"meta"标签没有显示任何效果.我已经尝试用分号替换逗号,但没有效果......

有任何想法吗 ?

html javascript jquery

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

如何在 Mac OS X 上的 bash 脚本中更改当前工作目录?

我正在努力解决一个小问题,我以前从未编写过 bash 脚本,对于知道如何正确完成的人来说这可能是一件小事。

我有以下文件夹结构(无法更改):

MyApp.app
   |_Contents
       |_Java
           |_MyApp.jar
       |_MacOS
           |_launch.sh
Run Code Online (Sandbox Code Playgroud)

launch.sh脚本应该启动 MyApp.jar 可执行文件,当前如下所示:

#!/bin/bash
SCRIPT_DIR=$(cd "$(dirname "$0")/../Java"; pwd)
exec "$SCRIPT_DIR/jre/bin/java" -Xms256m -XX:PermSize=64m -jar "MyApp.jar"
Run Code Online (Sandbox Code Playgroud)

启动 launch.sh 脚本时,第二行应将当前工作目录从MyApp.app/Contents/MacOS更改为MyApp.app/Contents/Java,以便随后调用java -jar MyApp.jar(第 3 行)及其正确的根目录作为工作目录...

但一旦 MyApp.jar 启动,我就会打印出 Java 应用程序中的当前工作目录:

System.out.println(System.getProperty("user.dir"));
Run Code Online (Sandbox Code Playgroud)

...它打印出 launch.sh 脚本的目录,即MyApp.app/Contents/MacOS而不是MyApp.app/Contents/Java

任何如何正确更改 bash 脚本中的目录的想法都受到高度赞赏:) ...?!

java macos bash shell

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

如何获取相机标定矩阵?

我目前正在尝试ORB SLAM 2这样的立体相机。我对左右相机/图像使用 2.8 毫米和可选的 3.6 毫米镜头,分辨率为 640x480 像素。

ORB SLAM 2 允许我使用设置文件 (*.yaml) 定义几个失真/校正参数,例如:

fx, fy, cx, cy
k1, k2, p1, p2
Run Code Online (Sandbox Code Playgroud)

我使用此处描述的棋盘(9x7 内角和 70mm 方形长度)进行了 OpenCV 相机校准。后来我使用了MRPT 的自动校准程序,它给了我相同的结果,但障碍更少。

但是,ORB SLAM 2 允许我定义这些附加参数来预校正图像(如果我理解正确的话):

D: 1x5 Matrix -> Distortion Coefficients aquired from calibration (fx,fy,cx,cy) ?
K: 3x3 Matrix -> Intrinsic Matrix aquired from calibration (k1,k2,p1,p2,k3) ?
R: 3x3 Matrix -> Rectification Transformation ?
P: 3x4 Matrix -> New Projection Matrix ?
Run Code Online (Sandbox Code Playgroud)

我的问题如下(请参阅下面的示例 settings.yaml …

opencv camera-calibration orb slam

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

Swift:如何将String列表转换为CGPoint列表?

我是Swift的新手,并没有在网上找到任何东西.如何转换以这种方式格式化的字符串:

let str:String = "0,0 624,0 624,-48 672,-48 672,192"
Run Code Online (Sandbox Code Playgroud)

到一个CGPoint阵列?

xcode ios swift

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

如何将C++结构转换为C#等价?

这是我的C++结构(文档说每个实例的大小必须是10个字节):

#pragma pack (1)
struct LaserPoint {
    WORD x;
    WORD y;
    byte colors[6];
};
Run Code Online (Sandbox Code Playgroud)

我做了以下C#结构:

[StructLayout(LayoutKind.Sequential, Pack=1)]
public struct LaserPoint {
    public UInt16 x;                   // 2 bytes
    public UInt16 y;                   // 2 bytes
    public byte[] colors;              // 6 bytes
}
Run Code Online (Sandbox Code Playgroud)

这是我的C#项目中的完整测试代码:

using System;
using System.Runtime.InteropServices;

namespace StructSizeTest {
    class Program {

        [StructLayout(LayoutKind.Sequential, Pack=1)]
        public struct LaserPoint {
            public UInt16 x;                   // 2 bytes
            public UInt16 y;                   // 2 bytes
            public byte[] colors;              // byte[6] = 6 bytes
        }

        static void …
Run Code Online (Sandbox Code Playgroud)

c# c++ dll interop dllimport

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