Guten Tag verehrte Forenmitglieder.
Mit nachstehendem Code lade ich die Homepage „route.classic.search.ch“ wie ich dies auch in VB gemacht habe.
Meine Frage:
WIE kann ich darin enthaltene Textfelder füllen? Den Button auslösen und die Rückgabe auslesen. Mit VB konnte ich das relativ einfach bewerkstelligen. Da ich aber ein MS-Abtrünniger bin und das Linux-System verwende, soll das jetzt mit Java realisert werden und zwar so, dass es trotzdem auch auf MS-Systemen läuft (wegen meinen Kunden die bei MS bleiben wollen.).
Hier der Code der mir die Webseite wunderbar läd:
import org.eclipse.swt.SWT;
import org.eclipse.swt.browser.Browser;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import swing2swt.layout.BorderLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.events.MouseAdapter;
import org.eclipse.swt.events.MouseEvent;
/**
* @author Tom
*
*/
public class SWTBrowserExample {
/**
* @param args
*/
public static void main(String[] args) {
Display display = new Display();
Shell shell = new Shell(display);
shell.setSize(847, 401);
shell.setBounds(10, 10, 1600, 900);
String Seite = „route.classic.search.ch“;
shell.setText(Seite);
shell.setLayout(new BorderLayout(0, 0));
Browser browser = new Browser(shell,SWT.BORDER);
browser.setUrl(Seite);
browser.setSize(1800,900);
shell.pack();
Button btnNewButton = new Button(shell, SWT.NONE);
btnNewButton.addMouseListener(new MouseAdapter() {
@Override
public void mouseDown(MouseEvent e) {
System.exit(0);
}
});
btnNewButton.setLayoutData(BorderLayout.SOUTH);
btnNewButton.setText(„Übernehmen“);
shell.open();
while(!shell.isDisposed()){
if(!display.readAndDispatch()){
display.sleep();
}
}
}
}
Die IDs der Elemente die ich ansprechen will sind bekannt. Hier im speziellen:
Document.getElementById(’ routefrom’).InnerText = „Strasse Nr, PLZ ORT“;
und
Document.getElementById(‚routeto‘).InnerText = „Strasse Nr, PLZ Ort“;
- fand ich nichts darüber wie ich obige Textfelder befüllen kann.
- auch nichts darüber wie ich diesen VB-Code in Java umsetzen muss.
[display.Document.Forms(0).InvokeMember(„submit“)]
Für Hilfe, wie ich das in oben geladener Webseite bewerkstelligen kann, bin ich sehr Dankbar. Für einen denkanstoss, wie ich den Befehl: Dokument.getElementById im obigen Script handhaben muss, wär wirklich suuper!
Vielen Dank an Alle.
Richi