我有一个带Save()方法的程序,它保存表单上的微调器和文本字段中的所有数据.每次用户对文本字段或微调器进行更改时,有没有办法调用"Save()"?类似于通用事件处理程序的东西.
谢谢
我目前正在开发自己的Java库,以便在我办公室的其他应用程序中使用,我正在探索模糊库本身的方法.
我正在使用Eclipse Indigo,并且正在使用yGuard v2.3.0.1.
首先,我的Java代码:
package com.test.ObfuscateTest;
public class MainClass {
private String secretClassVariable;
public static void main(String[] args) {
}
protected void SecretMethod(String secretParameter) {
secretClassVariable = secretParameter;
}
}
Run Code Online (Sandbox Code Playgroud)
使用带有以下ANT脚本的yGuard,给我一个空的JAR文件:
<?xml version="1.0" encoding="UTF-8"?>
<project name="project" default="yguard" basedir=".">
<target name="init">
<property name="project_name" value="ObfuscateTest"/>
<property name="srcDir" value="."/>
<property name="classDir" value="classes"/>
<property name="jar" value="${project_name}.jar"/>
<property name="obfjar" value="${project_name}_obf.jar"/>
<property name="renamelog" value="${project_name}_renamelog.xml"/>
<property name="shrinklog" value="${project_name}_shrinklog.xml"/>
<property name="mainclass" value="com.test.ObfuscateTest"/>
<mkdir dir="${classDir}" />
</target>
<target depends="jar" name="yguard">
<taskdef name="yguard" classname="com.yworks.yguard.YGuardTask" classpath="/Users/foo/Desktop/yguard-2.3.0.1/lib/yguard.jar"/>
<!-- the following can …Run Code Online (Sandbox Code Playgroud) 当您键入JTextArea时,它会自动调整其大小以适合输入的文本.
但是,JTextField似乎并没有这样做.这是一个证明问题的SSCCE:
public static void main(String[] args) {
JFrame frame = new JFrame();
frame.setLayout(new FlowLayout(FlowLayout.LEFT));
frame.add(new JTextArea("I resize as you type."));
frame.add(new JTextField("I don't."));
frame.setSize(200,100);
frame.setVisible(true);
}
Run Code Online (Sandbox Code Playgroud)

我想知道是否有一种方法可以让JTextField调整它的宽度.我希望我可以使用JTextArea,但我只能接受一行输入.
我无法理解UML中的限定符是什么.例如,在扫描页面中,有一个名为"SharedRegister"的限定符,其中包含"state"和"plateNumber".
为什么不使用一个名为SharerRegister的类并将"state"和"plateNumber"放入其中?它究竟为一个班级提供什么?

(图片来自Schaum的大纲,UML第2版.Simon Benett.第108页)
我有一个JTable,其中一些字段长文本,一些字段很少.
默认情况下,它的外观如下:

请注意如何缩短"名称"和"标题"行.
我想知道两件事:
这是代码:
String[] columnNames = {"Name", "Title", "Surname", "ID"};
Object[][] testData = {
{"John", "Mr.", "Doe", "61020384U"},
};
nameTable = new JTable(testData, columnNames);
nameTable.setFont(new Font("Tahoma", Font.PLAIN, 11));
window.add(new JScrollPane(nameTable));
Run Code Online (Sandbox Code Playgroud)
我看过Swing教程,但我要么错过了一些东西,要么就是不存在.
我有一个网格视图,我通过代码添加列:
//Retrieve "Table" from database
gridOffers.DataSource = table;
gridOffers.DataBind();
Run Code Online (Sandbox Code Playgroud)
按代码添加的列是在按钮之后添加的,这不是我需要的:
如何确保添加到购物车按钮最后一件事?
gridView的来源:
<Columns>
<asp:ImageField DataImageUrlField="ImageUrl" ControlStyle-Width="100"
ControlStyle-Height = "100" HeaderText = "Preview Image"
ItemStyle-HorizontalAlign="Center">
<ControlStyle Height="100px" Width="100px"></ControlStyle>
<ItemStyle HorizontalAlign="Center"></ItemStyle>
</asp:ImageField>
<asp:TemplateField ShowHeader="False">
<ItemTemplate>
<asp:Button ID="Button1" runat="server" CausesValidation="false"
CommandName="btnAddToCart" Text="Add To Cart" />
</ItemTemplate>
</asp:TemplateField>
</Columns>
Run Code Online (Sandbox Code Playgroud) 我有一个"Entry"对象列表(每个对象都有一个ID),并希望通过ID将它们拆分来创建一个2D数组:
class Entry
{
public int ID { get; set; }
public int value { get; set; }
public Entry(int id, int value)
{
this.ID = id;
this.value = value;
}
}
Run Code Online (Sandbox Code Playgroud)
人口:
List<Entry> entries = new List<Entry>();
entries.Add(new Entry(0, 20));
entries.Add(new Entry(1, 20));
entries.Add(new Entry(1, 25));
entries.Add(new Entry(2, 21));
entries.Add(new Entry(2, 23));
Run Code Online (Sandbox Code Playgroud)
我需要构建一个按ID分割的多维条目列表.以下代码构建数组:
List<Entry> entriesZero = new List<Entry>();
entriesZero.Add(new Entry(0, 20));
List<Entry> entriesOne = new List<Entry>();
entriesOne.Add(new Entry(1, 20));
entriesOne.Add(new Entry(1, 25));
List<Entry> entriesTwo = new List<Entry>();
entriesTwo.Add(new Entry(2, …Run Code Online (Sandbox Code Playgroud) 我有一个类似于以下的linq语句:
var entities = from row in table.AsEnumerable()
select new
{
ID = row.ID,
X = GetObjectByProcessingID(row.ID)[0],
Y = GetObjectByProcessingID(row.ID)[1],
....
};
Run Code Online (Sandbox Code Playgroud)
是否可以做以下事情:
var entities = from row in table.AsEnumerable()
select new
{
private var tmp = GetObjectByProcessingID(row.ID),
ID = row.ID,
X = tmp[0],
Y = tmp[1],
....
};
Run Code Online (Sandbox Code Playgroud)
为了避免两次调用GetObjectByProcessingID?
我知道你可以这样做:
var entities = from row in table.AsEnumerable()
select new
{
ID = row.ID,
XAndY = GetObjectByProcessingID(row.ID),
....
};
Run Code Online (Sandbox Code Playgroud)
但在这种情况下,它将暴露整个数组.我也知道我可以在方法端实现缓存(GetObjectByProcessingID)或创建一个帮助方法来调用它,如果ID相同则记住最后一个值.但有更好的方法吗?我可以在创建匿名类型时创建临时变量吗?
我正在尝试使用yeoman来获取此JSON文件:
{
"models": {
"user": {
"properties": [
{
"name": {
"type": "string"
},
"surname": {
"type": "string"
},
"id": "number"
}
]
}
}
}
Run Code Online (Sandbox Code Playgroud)
把它变成这样的东西:
Class User {
name : string
surname : string
id : number
}
Run Code Online (Sandbox Code Playgroud)
是否可以在模板中进行某种形式的循环?这就是我的想法......
export class <%= entityName %> extends Model {
<% forEach (property in props) { %>
<%= property.name %> : <% property.type %>;
<% } %>
}
Run Code Online (Sandbox Code Playgroud) 有没有办法在构建时评估某些内容,然后在 angular-cli 构建过程中将其添加到应用程序中?
用例:
我之前用 gulp 构建了一个应用程序。您可以执行以下操作:
git rev-parse --short HEAD
Run Code Online (Sandbox Code Playgroud)
然后,您可以使用gulp-replace将其添加到应用程序中:
const GIT_VERSION = "{GIT_VERSION}";
Run Code Online (Sandbox Code Playgroud)
最后,编译后的应用程序将如下所示:
const GIT_VERSION = "59e5722";
Run Code Online (Sandbox Code Playgroud)
angular-cli 是否提供了一些东西来实现这一点而不必恢复到 gulp?
java ×4
c# ×3
swing ×3
linq ×2
.net ×1
angular ×1
angular-cli ×1
ant ×1
asp.net ×1
awt ×1
controls ×1
eclipse ×1
gridview ×1
gulp ×1
javascript ×1
jtable ×1
obfuscation ×1
qualifiers ×1
text ×1
typescript ×1
uml ×1
yeoman ×1
yguard ×1