有人可以告诉我从哪里开始吗?
父面板需要知道子面板之间的关系。
一种方法是保持跟踪ArrayList组件对之间的关系。然后,您需要重写paintChildren(...)父面板的方法以在两个子面板之间绘制一条线。
您在父面板类中定义 ArrayList:
private ArrayList<Component> relationships = new ArrayList<Component>();
然后根据需要将组件对添加到 ArrayList:
relationships.add( component1a );
relationships.add( component1b );
基本的绘画代码是:
@Override
protected void paintChildren(Graphics g)
{
fr (int i = 0; i < relationships.size(); i += 2)
{
Component one = relationships.get(i);
Component two = relationships.get(i + 1);
Point p1 = //calculate the center of component one
Point p2 = //calculate the center of component two
g.drawline(p1.x, p1.y, p2.x, p2.y);
}
super.paintChildren(g);
}
因此,上面的代码应该在添加到 ArrayList 的每对组件的中心点之间绘制线条。然后,子面板将绘制在线条的顶部,以便线条看起来像是从每个组件的边缘出来的。
查看trashgod 的GraphPanel示例。此示例支持拖动形状,并且线条将跟随形状。我无法使用 REST API post 请求将存储在 .json 文件中的 Cucumber 测试结果更新到 Jira。我可以使用相同的方法来更新 Cucumber 中的功能,但它不适用于我的 Json 结果文件。我对 Java 和 Json 还很陌生。因此在理解它们时遇到了一些问题。
我尝试将 Json 文件转换为 Json 数组以及 Json 对象,但它不起作用。
//下面是我的方法,它从项目中获取文件路径和 URL 来更新 Jira 中 Xray 的结果
public static void importCucumberResultFilesToJira(String filePath, String resultTypeUrlValue) throws IOException {
String jiraUrl = config.getJiraLoginValue();
log.info(String.format("Starting upload of Cucumber features to XRAY on Jira project: %s\n Using Jira user: %s ", config.getJiraProjectValue(), config.getJiraLoginValue()));
log.info(String.format("Path to Report: %s", filePath));
String authentication = config.getJiraLoginValue() + ':' + config.getJiraPassword();
BASE64Encoder encoder = new BASE64Encoder();
String encoded = null;
try {
encoded = encoder.encode((authentication).getBytes("UTF-8"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
// 我在 POM.xml 中的依赖项我发布它是因为根据我在 SO 和其他网站上所做的研究,有时某些依赖项会带来问题
MMTTMM
相关分类