我在微软Visual Studio中使用VB创建自动化,就像应用程序一样 项目路径是Visual Basic> windows classic Desktop> windows窗体 app(.NET框架)。 代码是使用VBA编写的,它是一个获得的形式 用户输入并将其粘贴到webform中,然后单击“提交”按钮并创建票证。 我已经通过VBA excel运行这种自动化。但是由于某些情况我需要将其创建为独立的应用程序。我在点击提交按钮时遇到问题。有人可以帮助我正确地设置代码。
这是从视图源
获取的HTML元素public class Stackoverflow
{
public static void main(final String[] arguments) throws HeadlessException
{
final JFrame frame = new JFrame("Stackoverflow | Question");
EventQueue.invokeLater(() ->
{
frame.setDefaultCloseOperation(WindowConstants.EXIT_ON_CLOSE);
frame.setSize(1280, 720);
frame.setLocationRelativeTo(null);
frame.getContentPane().setLayout(new FlowLayout(FlowLayout.CENTER));
frame.setVisible(true);
final SimpleAttributeSet set = new SimpleAttributeSet();
StyleConstants.setForeground(set, Color.RED);
final JTextPane pane = new JTextPane();
pane.setPreferredSize(frame.getContentPane().getSize());
final StyledDocument document = pane.getStyledDocument();
try
{
int length = 0;
for (String string : Files.readAllLines(Paths.get("test.rtf"))
{
document.insertString(length, string, set);
length += string.length();
}
}
catch (BadLocationException badLocationException)
{
badLocationException.printStackTrace();
}
frame.getContentPane().add(pane);
frame.getContentPane().repaint();
});
}
}
正如您所看到的,有两个按钮,一个是提交故障单,另一个是保存为新的快速链接。我需要单击“提交票证”按钮。 VBA中使用的早期代码是
<input type="hidden" name="ticket_type" id="ticket_type" value="" />
<input type="hidden" name="quicklink_id" id="quicklink_id"value="0"/>
<textarea name="work_log" style="display:none"></textarea>
<textarea name="correspondence" style="display:none"></textarea>
<div id="action_bar" class="cti-search-enabled">
<div id="button_bar">
<a class="tt_button orange_button" href="#" onclick="ajax_submit()">
<span>Submit Ticket</span></a>
<a class="tt_button" href="#" onclick="build_quicklink()">
<span>Save as New Quicklink</span></a>
这是我在.net
中的代码 Call sel.executeScript("ajax_submit()", "javascript")
所以一旦加载了表单,它将显示一个消息框,然后单击提交按钮。但是这显示错误为
严重级代码描述项目文件行抑制状态 错误BC30455未为'Public Overloads Sub ExecCommand(命令为String,showUI As Boolean,value As Object)'的参数'value'指定参数。 My_First
有人可以帮助我解决代码的问题。对不起我是.net的初学者(以及VBA)
答案 0 :(得分:0)
这似乎可以解决问题:
Me.WebBrowser1.Document.All("ID-Of-The-Button").InvokeMember("Click")