小编wlf*_*bck的帖子

MatrixXf :: Random总是返回相同的矩阵

我刚刚和Eigen玩了一下,注意到MatrixXf :: Random(3,3)总是返回相同的矩阵,第一个总是这个例如:
0.680375 0.59688 -0.329554
-0.211234 0.823295 0.536459
0.566198 -0.604897 -0.444451

这是预期的行为,还是我只是监督一些非常简单的事情?(我对数学库的经验接近于零)

我使用的代码:

for(int i = 0; i < 5; i++) {
        MatrixXf A = MatrixXf::Random(3, 3);
        cout << A <<endl;
}
Run Code Online (Sandbox Code Playgroud)

c++ matrix eigen

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

突出显示JTable的列标题

我正在构建一个小JTable,并且当选择一个单元格以便更容易地找到该单元格的关联名称时,我想突出显示列标题(和行标题 - 行标题部分实际上正在工作).这是一张图片:

在此输入图像描述

我已经尝试使用以下方法切换标题的渲染器:

table.getTableHeader().setDefaultRenderer(new ColumnHeaderRenderer());
Run Code Online (Sandbox Code Playgroud)

但是只有当我点击标题并且总是说isSelected为false时才会调用它.

这是我用于行名的代码,包括渲染器内的高亮 - 代码不是由我,我只是修改了一下:

/*
 *  Use a JTable as a renderer for row numbers of a given main table.
 *  This table must be added to the row header of the scrollpane that
 *  contains the main table.
 */
public class RowNameTable extends JTable
        implements ChangeListener, PropertyChangeListener {

    private JTable main;

    public RowNameTable(JTable table) {
        main = table;
        main.addPropertyChangeListener(this);

        setFocusable(false);
        setAutoCreateColumnsFromModel(false);
        setModel(main.getModel());
        setSelectionModel(main.getSelectionModel());

        TableColumn column = new TableColumn();
        column.setHeaderValue(" ");
        addColumn(column);
        column.setCellRenderer(new RowNameRenderer(main)); …
Run Code Online (Sandbox Code Playgroud)

java swing jtable highlight jtableheader

6
推荐指数
2
解决办法
3295
查看次数

捕获库函数的输出

我真的很茫然.我在堆栈上发现了一些关于如何重定向函数输出的线程,但是在我的情况下它似乎都没有.

我正在使用来自library(forecast)许多(生成的)时间序列的arima ,其中一些具有不良属性,这导致auto.arima()打印出错误和警告.无论如何我都无法捕捉到这个错误,无论是通过tryCatch还是capture.output()(只捕获正常的预测).

目标是捕获下面示例抛出的错误消息(和警告)并对其作出反应.所以基本上最后我会以某种变量的形式出现错误和预测(尽管是错误的).

我感谢任何建议,以下是产生错误的最小示例:

library(forecast)
testt <- c(826,816,839,995,697)
testend <- c(2015,164)
testseries <- ts(testt,end=testend,frequency=365)
auto.arima(testseries)
#tryCatch not working:
testfc <- tryCatch(forecast(auto.arima(testseries),h=1), error=function(e) NA)
#capture.output not working:
result <- capture.output(auto.arima(testseries))
Run Code Online (Sandbox Code Playgroud)

r

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

我怎样才能将项目类型识别为eclipse插件?

我想从Eclipse插件中识别当前所选项目的类型(java/c/...); 如果可能的话还有一些其他信息(使用过的库和什么不是),基本上是项目周围的所有信息.

我一直在谷歌和这里搜索几个小时,但无济于事.我是否可以访问我想要的信息而无需选择一些虚假的扩展点(列出的那些似乎都不适合我想做的事情)?我的意思是,我现在不想向Eclipse添加任何内容,我只想将这些内容打印到控制台中.(开始小和东西)

对不起,长期咆哮,但我不知道如何更好地表达我的问题.

java eclipse pde

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

如何让TabPane填充其父级?

我的TabPane似乎只是水平填充它的宽度,而不是垂直填充.我现在的解决方法是这样做:

    stage.getScene().heightProperty().addListener(new ChangeListener<Number>() {

      @Override
      public void changed(ObservableValue<? extends Number> observable, Number oldValue, Number newValue) {
        System.out.println("height changed");
        tabPane.setPrefHeight(newValue.doubleValue());
      }
    });
Run Code Online (Sandbox Code Playgroud)

但是,如果我使用那个高度,它显然大于实际剩余的区域(TabPane上方的MenuBar).(或者它是否适当地调整它的大小?)它也有点感觉不对,我必须设置简单的布尔值,因为它的行为完全符合水平变化的预期.

场景设置如下:

public static ResourceBundle BUNDLE = ResourceBundle.getBundle("locales/Bundle", new Locale("en", "GB"));
Scene scene = new Scene(new VBox(0), 800, 600);
MenuBar menuBar = new MenuBar();
Menu menuStart = new Menu(BUNDLE.getString("menu.start"));
Menu menuView = new Menu(BUNDLE.getString("menu.view"));
Menu menuHelp = new Menu(BUNDLE.getString("menu.help"));
menuBar.getMenus().addAll(menuStart, menuView, menuHelp);

((VBox) stage.getScene().getRoot()).getChildren().add(menuBar);
TabPane tabPane = new TabPane();
((VBox) stage.getScene().getRoot()).getChildren().add(tabPane);
stage.setScene(scene);
stage.show();
Run Code Online (Sandbox Code Playgroud)

当然还有一些代码,但它只包含与拖拉相关的监听器,而且这个问题在它们之前做过任何事情之前就已经发生了(每次他们做某事时都会打印到控制台).

标签设置:

final Tab tab = …
Run Code Online (Sandbox Code Playgroud)

javafx

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

Java Swing自定义光标是不可见的

我使用本教程制作了一个自定义光标.问题是,一旦改变,我就什么也得不到.光标不可见.我尝试了那里给出的铅笔图像,我快速绘制的自定义图像,但它们都不起作用.

    public Cursor stoneCursor;
    Toolkit toolkit = Toolkit.getDefaultToolkit();
    Image image = toolkit.getImage("pencil.gif");
    Point hotspot = new Point(0,0);
    stoneCursor = toolkit.createCustomCursor(image, hotspot, "Stone");
    getContentPane().setCursor(stoneCursor);
Run Code Online (Sandbox Code Playgroud)

这是一个JFrame的课程.

".如果要显示的图像无效,光标将被隐藏(完全透明),热点将被设置为(0,0)." 这是在createCustomCursor()的javadoc中编写的,但它应该与pencil.gif一起使用?

谢谢你的答案提前!:)

java swing custom-cursor

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

标签 统计

java ×3

swing ×2

c++ ×1

custom-cursor ×1

eclipse ×1

eigen ×1

highlight ×1

javafx ×1

jtable ×1

jtableheader ×1

matrix ×1

pde ×1

r ×1