当我运行下面的示例代码时,JTextArea的宽度是固定的(100px),而其高度是动态调整的,因为我在其中键入了一些文本.
例如,我从这开始:
--------------------
| some text |
--------------------
Run Code Online (Sandbox Code Playgroud)
当我输入更多文本时,JTextArea的高度会扩展,以便在保留宽度的同时适合内容:
--------------------
| some text, some |
| other longer text|
| etc... |
--------------------
Run Code Online (Sandbox Code Playgroud)
如何加倍JTextArea的宽度?当我这样做时,通过改变preferredSize高度不再是动态的.
public class TestTextArea extends JFrame {
public static void main(String[] args) {
new TestTextArea().setVisible(true);
}
public TestTextArea() {
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setBounds(0,0,800,600);
setContentPane(createPane());
}
protected Container createPane() {
JTextArea textArea = createTextArea();
// ------------------------------------------
// UNCOMMENT TO DOUBLE THE WIDTH OF JTextArea
// Dimension oldPrefSize = textArea.getPreferredSize();
// Dimension newPrefSize = new Dimension(oldPrefSize.width * 2, oldPrefSize.height); …Run Code Online (Sandbox Code Playgroud) 我正在尝试通过 keycloak authzclient 从 keycloak 服务器检查用户权限。但是不断失败,现在我不确定我是否对这个过程有一些误解。
AuthzClient authzClient = AuthzClient.create();
String eat = authzClient.obtainAccessToken("tim", "test123").getToken();
AuthorizationResource resource = authzClient.authorization(eat);
PermissionRequest request = new PermissionRequest();
request.setResourceSetName("testresource");
String ticket = authzClient.protection().permission().forResource(request).getTicket();
AuthorizationResponse authResponse = resource.authorize(new AuthorizationRequest(ticket));
System.out.println(authResponse.getRpt());
Run Code Online (Sandbox Code Playgroud)
最后一次调用 authResponse.getRpt() 失败并显示 403 forbidden。但是管理控制台中的以下设置评估为 Permit?
客户端配置是:
{
"realm": "testrealm",
"auth-server-url": "http://localhost:8080/auth",
"ssl-required": "external",
"resource": "tv",
"credentials": {
"secret": "d0c436f7-ed19-483f-ac84-e3b73b6354f0"
},
"use-resource-role-mappings": true
}
Run Code Online (Sandbox Code Playgroud)
以下代码:
AuthzClient authzClient = AuthzClient.create();
String eat = authzClient.obtainAccessToken("tim", "test123").getToken();
EntitlementResponse response = authzClient.entitlement(eat).getAll("tv");
String rpt = response.getRpt();
TokenIntrospectionResponse requestingPartyToken …Run Code Online (Sandbox Code Playgroud) 在 Typedoc 中,您可以使用以下方式链接到另一个类:
[[ClassName]]{@link ClassName}该类甚至可以属于另一个模块。
然而我不知道如何链接到
所以假设你有 2 个d.ts文件:
Foo.d.ts
/**
* I want to link to:
* the [[Bar]] module //does not work
* the {@link Bar} module //does not work
* the [[Bar.foobar]] function //does not work
* the {@link Bar.foobar]] function //does not work
*/
export class Foo{}
Run Code Online (Sandbox Code Playgroud)
和bar.d.ts
export function foobar(): string;
Run Code Online (Sandbox Code Playgroud)
执行此操作的正确语法是什么?或者 Typedoc 不支持这个?
所以基本上,我正在尝试用GUI创建一个简单的程序,让你在两个jRadioButtons作为选择时做出选择,其中两个中的任何一个都以与视觉小说类似的方式导致相应的故事情节.然而问题是我无法将jButton的想法与jRadioButton的选择联系起来.
这个概念是这样的:在一个框架中,有一个jTextArea显示形成故事情节的文本字符串,它提供了两个选项可供选择,由两个jRadioButtons表示,然后必须由jButton执行.
到目前为止,我在JLadioButton的ActionListener中放置的唯一逻辑是,一旦点击jRadioButton而jButton故意为空,就必须禁用另一个逻辑.任何人都有任何类似的程序或模块他/她想分享,至少,这个逻辑在程序上说?
我想出了下面的代码:
String[] labels = {"Name: ", "Fax: ", "Email: ", "Address: "};
int numPairs = labels.length;
JFrame frame = new JFrame("SpringDemo1");
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
//Set up the content pane.
Container contentPane = frame.getContentPane();
SpringLayout layout = new SpringLayout();
contentPane.setLayout(layout);
for (int i = 0; i < numPairs; i++)
{
JLabel lable = new JLabel(labels[i]);
contentPane.add(lable);
contentPane.add(new JTextField(15));
}
//Display the window.
frame.pack();
frame.setVisible(true);
Run Code Online (Sandbox Code Playgroud)
期待:

我得到什么:
默认:

调整大小时:

结果现在与代码实际/通常的样子无关!
我还尝试复制粘贴并运行现成的代码:从这里下载:
结果如下:

我试图从Java中的表中获取数据.我已经能够获取数据,但是当它被输出时,它自己连接起来.如果数据是"admin",则输出为"adminadmin".下面是代码.有人能告诉我这是什么问题吗?
package sample;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.MouseEvent;
import java.sql.*;
import javax.swing.*;
import javax.swing.event.ListSelectionEvent;
import javax.swing.event.ListSelectionListener;
import net.proteanit.sql.DbUtils;
public class Table extends JFrame{
JTable table;
Connection conn = null;
ResultSet rs = null;
PreparedStatement pst = null;
private int row;
private String name, status;
private void connect(){
conn = myconnection.ConnectDb();
}
public void mouseClicked(MouseEvent e) {
table.getSelectionModel().addListSelectionListener(new ListSelectionListener() {
public void valueChanged(ListSelectionEvent e) {
int sel = table.getSelectedRow();
name = table.getModel().getValueAt(sel, 0).toString();
System.out.print(name);
}
});
}
private …Run Code Online (Sandbox Code Playgroud) java ×5
swing ×4
jbutton ×1
jradiobutton ×1
jtable ×1
jtextarea ×1
keycloak ×1
permissions ×1
typedoc ×1
typescript ×1