AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Java funktion speicherort als argument
Thema durchsuchen
Ansicht
Themen-Optionen

Java funktion speicherort als argument

Ein Thema von veX · begonnen am 30. Mär 2011 · letzter Beitrag vom 30. Mär 2011
Antwort Antwort
veX

Registriert seit: 22. Aug 2005
12 Beiträge
 
#1

Java funktion speicherort als argument

  Alt 30. Mär 2011, 15:46
Hiho,

mir ist kein besserer Titel eingefallen .

Folgender Java Code liegt zugrunde:

Code:
public class screenshot {

   public static void main(String[] args) throws Exception {
      Thread.sleep(150);
       BufferedImage bi = new Robot().createScreenCapture(
         new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()) );
   
       Date dateNow = new Date ();
      
        SimpleDateFormat dateformatddMMyyyyHHmmss = new SimpleDateFormat("ddMMyyyyHHmmss");
        StringBuilder nowddMMyyyyHHmmss = new StringBuilder( dateformatddMMyyyyHHmmss.format( dateNow ) );
       ImageIO.write( bi, "jpg", new File(System.getProperty("user.home")+"/screenshot"+nowddMMyyyyHHmmss+".jpg") );
       System.exit( 0 );
   }
}
Keine Ahnung wie gut der Code ist oder so, ich arbeite nicht mit Java und habs vor sehr langer zeit nur mal kurz ausgetestet, aber er tut seinen Dienst.

Wie man sieht speichert er das jpg file immer im Home-Verzeichnes des users, ich würde nun aber gerne in Delphi folgendes machen:

ShellExecute(Application.Handle, 'open', PChar('screenshot.jar'), speicherort, nil, SW_SHOWNORMAL); Also quasi den Speicherort als Parameter der jar übergeben, also Inhalt eines edit Feldes oder sowas. Könnte vielleicht ein Java-könner mir mal die Funktion so hinbiegen, dass das klappt? Kenn mich da nich aus.


Größten Dank im Voraus

Achso, es gibt natürlich einen Grund, warum ich das über Java mache und nicht über BitBlt und co. Aber der Spielt ja eigentlich keine Rolle
  Mit Zitat antworten Zitat
Benutzerbild von Neutral General
Neutral General

Registriert seit: 16. Jan 2004
Ort: Bendorf
5.219 Beiträge
 
Delphi 10.2 Tokyo Professional
 
#2

AW: Java funktion speicherort als argument

  Alt 30. Mär 2011, 16:10
Hallo,

Also ich hab hier kein Java aber grob sollte es so gehen:
(Hab die Variablen Namen mal übersichtlicher gemacht )

Code:
public class screenshot {

   public static void main(String[] args) throws Exception {
       Thread.sleep(150);
       BufferedImage bi = new Robot().createScreenCapture(
         new Rectangle(Toolkit.getDefaultToolkit().getScreenSize()) );
   
       Date dateNow = new Date ();
       
       SimpleDateFormat dateformat = new SimpleDateFormat("ddMMyyyyHHmmss");
       StringBuilder datestr = new StringBuilder(dateformat.format(dateNow));
       
       if (args.Length > 0) {
         ImageIO.write(bi, "jpg", new File(args[0]+"/screenshot"+datestr+".jpg") );
       }
       System.exit( 0 );
   }
}
Kann auch sein, dass der Parameter in args[1] steht (so wäre es bei Delphi!).
Ggf. musst du dann überprüfen ob args.Length > 1 und dann args[1] übergeben.

Gruß
Neutral General
Michael
"Programmers talk about software development on weekends, vacations, and over meals not because they lack imagination,
but because their imagination reveals worlds that others cannot see."
  Mit Zitat antworten Zitat
veX

Registriert seit: 22. Aug 2005
12 Beiträge
 
#3

AW: Java funktion speicherort als argument

  Alt 30. Mär 2011, 17:25
mit 0 klappts

Großen Dank Herr General!!!

Ich glaube ich muss Java vielleicht doch nochmal ne Chance geben ...
  Mit Zitat antworten Zitat
shmia

Registriert seit: 2. Mär 2004
5.508 Beiträge
 
Delphi 5 Professional
 
#4

AW: Java funktion speicherort als argument

  Alt 30. Mär 2011, 17:39
Nur zur Info:
JPEG ist ein denkbar ungünstiges Datenformat für einen Screenshot, denn es benützt verlustbehaftete Komprimierung.
Dadurch werden feine Strukturen (Schriften, dünne Linien) unscharf und verwaschen.
Empfehlenswert ist PNG oder falls 256 Farben ausreichend sind GIF.
Andreas
  Mit Zitat antworten Zitat
veX

Registriert seit: 22. Aug 2005
12 Beiträge
 
#5

AW: Java funktion speicherort als argument

  Alt 30. Mär 2011, 20:14
das ist bekannt, ich hab aber noch nie probleme bei jpgs gehabt (100er qualli), reicht für ottonormal screens vollkommen aus.
  Mit Zitat antworten Zitat
Antwort Antwort


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 18:37 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz