الفريق العربي للبرمجةأرشيف المنتديات · 2000 – 2023
نسخة أرشيفية للقراءة فقط — التسجيل والمشاركة مغلقان، والمحتوى محفوظ كما كان.

برنامج للقيام ببعض المهام من خلال إعطائه إحداثيات معينة للشاشة

بدأه issam-ahmed في 4 ديسمبر 2012 · 2 رد · 628 مشاهدة · في JavaSE
مشاركة: واتساب X فيسبوك تيليجرام
#1 صاحب الموضوع

السلام عليكم و رحمة الله و بركاته

لو سمحتم أريد معرفة بعض الأوامر في جافا

و هي أمر إستدعاء برنامج مفتوح و مصغر بشريط المهام في الويندوز ليصبح ظاهر على الشاشة.

و أمر تحريك مؤشر الفأرة حسب إحداثيات أنا أضعها في البرنامج.

و أمر الضغط على Enter أو left click للماوس من خلال البرنامج نفسه الذي صممته بالجافا.

و أمر لصق قيمة كرقم أو نص يأخذها من البرنامج و يضعها في أي مكان أنا حددته.

مع العلم أنا بحثت عن الموضوع كثيراً و وجدت بعض الأوامر القريبة للموضوع كتشغيل برنامج مغلق

            String execStr = "C:\\Program Files\\Internet Explorer\\IEXPLORE.EXE";
            Process proc = Runtime.getRuntime().exec(execStr);

            Runtime runtime = Runtime.getRuntime();
            Process process = runtime.exec("C:\\Windows\\notepad.exe C:\\test.txt");

            ProcessBuilder pb = new ProcessBuilder();
            pb.command("Notepad.exe");
            pb.start();

و لكن كما هو واضح لم أصل إلى ما أريد و أتمنى أن تفيدوني و شكراً

#2

السلام عليكم يا إخوان لو حد بيعرف يفيدني بأي شيء يا ريت يرد و هذا بطلبه ليس لواجبات أو ما شابه فقط لأني محتاج أعمل برنامج يعمل مهام معينة و محتاج كيفية تنفيذ هذه الأوامر و شكراً

تم تعديل هذه المشاركة بواسطة issam-ahmed في 5 ديسمبر 2012 في 11:11

#3

السلام عليكم

بداية, أود أن ألفت انتباهك أخي الكريم إلى أنه يُستحسن دائما وضع سؤال واحد في الموضوع.

بالنسبة لأسئلتك :

اقتباس
أمر إستدعاء برنامج مفتوح و مصغر بشريط المهام في الويندوز ليصبح ظاهر على الشاشة

استخدم الدالة setExtendedState وقم بتمرير الوسيط MAXIMIZED_BOTH إذا أردت تكبير النافذة و ICONIFIED إذا أردت تصغيرها.

أما إذا كنتَ تريد أن تضع النافذة في الــ SysTray فعليك استخدام الدالة getSystemTray الموجودة في الفئة SystemTray.

اقتباس
أمر تحريك مؤشر الفأرة حسب إحداثيات أنا أضعها في البرنامج

استخدم الدالة mouseMove الموجودة في الفئة Robot.

اقتباس
أمر الضغط على Enter أو left click للماوس من خلال البرنامج نفسه الذي صممته بالجافا.

قم بتمرير القيمة VK_ENTER للدالة keyPress الموجودة في الفئة Robot.

اقتباس
أمر لصق قيمة كرقم أو نص يأخذها من البرنامج و يضعها في أي مكان أنا حددته

دالة الــ Copy :

public static void setAsText(String text) {
        if (text != null) {
            StringSelection contents = new StringSelection(text);
            Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
            clipboard.setContents(contents, null);
        }
    }

دالة الــ Past :

public static String getAsText() {
        String clipText = "";
        Clipboard clipboard = Toolkit.getDefaultToolkit().getSystemClipboard();
        Transferable contents = clipboard.getContents(null);
        if ((contents != null) && contents.isDataFlavorSupported(DataFlavor.stringFlavor)) {
            try {
                clipText = (String) contents.getTransferData(DataFlavor.stringFlavor);
            } catch (UnsupportedFlavorException ex) {
                Logger.getLogger(ClipboardTransfert.class.getName()).log(Level.SEVERE, null, ex);
            } catch (IOException ex) {
                Logger.getLogger(ClipboardTransfert.class.getName()).log(Level.SEVERE, null, ex);
            }
        }
        return clipText;
    }

أرجو لك التوفيق.

2

مواضيع مشابهة

عدد الزوار حالياً

المتواجدون خلال آخر دقيقتين · يتحدّث كل ٣٠ ثانية

—الإجمالي—أعضاء مسجّلون—زوار بدون تسجيل

جارٍ التحقق من المتواجدين…