小编Rya*_*anB的帖子

Java - 具有水平滚动的垂直"FlowLayout"

正如标题中所描述的那样,我一直试图设置一种带有水平滚动的垂直流布局.布局中的组件将是JLabel.让我画一幅画:

+-------------------------+   <--- window
|Label1   Label4    Label7|
|Label2   Label5    Label8|   <--- labels
|Label3   Label6    Label9|
|<===============>========|   <--- scrollbar
+-------------------------+
Run Code Online (Sandbox Code Playgroud)

同一窗口,垂直扩展

+--------------------------+   <--- window
|Label1   Label5    Label9 |
|Label2   Label6    Label10|   <--- labels
|Label3   Label7    Label11|
|Label4   Label8    Label12|
|<===================>=====|   <--- scrollbar
+--------------------------+
Run Code Online (Sandbox Code Playgroud)

因此,标签将填充可用的垂直空间,然后创建一个新列.一旦可用的水平空间耗尽,就会出现水平滚动条.

通常不应出现垂直滚动条; 但是,如果窗口的垂直高度非常小,那么有一个垂直滚动条会很不错.

任何帮助是极大的赞赏.我是Java的新手,所以任何额外的解释都会很精彩.谢谢!

编辑:

根据以下回复,我现在正在使用:http: //tips4java.wordpress.com/2008/11/06/wrap-layout/http://code.google.com/p/verticalflowlayout/

我有WrapLayout扩展VerticalFlowLayout:

package LogicSim;

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

/**
 *  FlowLayout subclass that fully supports wrapping of components.
 */
public class VerticalWrapLayout extends VerticalFlowLayout …
Run Code Online (Sandbox Code Playgroud)

java swing jpanel jframe layout-manager

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

组织简单的布尔逻辑模拟器 - Java

在我的工作中,我们将带有布尔逻辑程序的处理器用于工业应用。这些程序可能会变得非常冗长和复杂。它们基本上由一组输入位、输出位和内部布尔位组成。这些位随后用于产生输出的逻辑语句中。输入和输出可以是物理线输出或串行通信,但这并不重要。

这是一个快速、简化的示例:

Inputs:
input1, input2, input3;

Outputs:
output1, output2, output3;

Boolean:
bool1, bool2, bool3;

Logic:
assign input1 && input2 to bool1;
assign input1 && bool1 to output1;
assign input2 && input3 to bool2;
assign output1 && bool2 to output2;
assign output1 && output2 || bool2 to bool3;
Run Code Online (Sandbox Code Playgroud)

所以,请记住,我对 Java 很陌生。我已经完成了相当多的基于网络的编程(ruby、php、javascript 等)。

基本上我希望模拟器做的是分解程序的格式并允许图形模拟。程序可以相互通信,因此模拟器也应该能够处理多个程序(并将 I/O 连接在一起)。

我的问题是开始组织。我假设我需要有一个“位”类。此类将存储该位是设置为 TRUE 还是 FALSE、位的类型、相关等式、该位来自哪个处理器等。

但是,我可以达到拥有数百或数千个“位”实例的地步。那么我如何组织这些位呢?例如,如果我想获取来自某个处理器的所有实例,我该如何实现?

此外,当我更改模拟器中输入位的状态(TRUE 或 FALSE)时,它将更新其他几个位的状态。对此有何建议?我想让它尽可能灵活,因为我想添加额外的功能。例如,某些位可以被指定为定时器(当它们的条件满足时,它们可能需要一定的时间来设置,或者当它们的条件不再满足时,它们可能需要一定的时间退出)。

我最初的想法是保留对象的数组或散列,并尝试以某种方式使它们组织起来。

我基本上是在寻找任何建议。提前致谢。

java

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

Rails &amp; Devise - 跨子域自动登录

设置

我有一个 Rails 应用程序,用户在其中注册了一个帐户,并为他们创建了一个子域。然后他们可以进入子域并使用他们的凭据登录。工作流程如下所示:

  1. 用户访问基域填写包含电子邮件/用户名/密码和子域字段的表单
  2. 根据提交的信息,服务器在全局/公共数据库中创建一个帐户。服务器然后创建一个特定于该特定子域/帐户的数据库,并将用户记录存储在其中。
  3. 用户被重定向到他们的子域,并要求登录。

(注意:为了实现单独的“数据库”,我使用的是 postgres 模式,但这应该无关紧要。)

问题

我的问题涉及到第3步。我想将用户重定向到他们的子域名和记录它们自动而不是要求他们登录的。不过,我希望在所有子域共享一个会话。

我想以某种方式安全地传输自动登录请求。

可能的解决方案

我曾考虑使用一次性随机令牌,将其存储在 cookie 和users表中。用户成功创建帐户后,他将被重定向到子域。届时,令牌将被消耗/销毁,用户将自动登录。

我还需要有一个较短的窗口,以便在到期前使​​用令牌。

想法?谢谢!

ruby activerecord ruby-on-rails devise rails-postgresql

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