Κουνάει το ποντίκι

ψήφοι
35

ΕΝΤΑΞΕΙ. Αυτό είναι ένα κομμάτι από ένα app ματαιοδοξία, αλλά είχα μια σημερινή κατάσταση στο χώρο εργασίας, όπου ήμουν σε μια κατηγορία κατάρτισης και η μηχανή που να κλειδώνει κάθε 10 λεπτά. Λοιπόν, εάν οι εκπαιδευτές πήρε ενθουσιασμένος για ομιλία - σε αντίθεση με την αλλαγή διαφάνειες - η συσκευή θα κλειδώσει.

Θα ήθελα να γράψω ένα teeny εφαρμογή που δεν έχει τίποτα, αλλά ένα εικονίδιο στη γραμμή εργασιών που δεν κάνει τίποτα, αλλά μετακινήστε το ποντίκι από 1 pixel κάθε 4 λεπτά.

Μπορώ να το κάνουμε αυτό με 3 τρόπους με τους Δελφούς (ισχυρή μου γλώσσα), αλλά είμαι κινείται σε C # για την εργασία και θα ήθελα να ξέρω το δρόμο της μικρότερης αντίστασης εκεί.

Δημοσιεύθηκε 05/08/2008 στις 03:51
πηγή χρήστη
Σε άλλες γλώσσες...                            


4 απαντήσεις

ψήφοι
23

για C # 3.5

χωρίς notifyicon ως εκ τούτου θα πρέπει να καταγγείλει την παρούσα αίτηση στο έργο του διαχειριστή με το χέρι

using System;
using System.Drawing;
using System.Windows.Forms;

static class Program
{
    static void Main()
    {
        Timer timer = new Timer();
        // timer.Interval = 4 minutes
        timer.Interval = (int)(TimeSpan.TicksPerMinute * 4 / TimeSpan.TicksPerMillisecond);
        timer.Tick += (sender, args) => { Cursor.Position = new Point(Cursor.Position.X + 1, Cursor.Position.Y + 1); };
        timer.Start();
        Application.Run();
    }
}
Απαντήθηκε 05/08/2008 στις 04:00
πηγή χρήστη

ψήφοι
12

Ο «σωστός» τρόπος για να γίνει αυτό είναι να απαντήσει στο μήνυμα WM_SYSCOMMAND. Στην C # αυτό μοιάζει κάπως έτσι:

protected override void WndProc(ref Message m)
{
    // Abort screensaver and monitor power-down
    const int WM_SYSCOMMAND = 0x0112;
    const int SC_MONITOR_POWER = 0xF170;
    const int SC_SCREENSAVE = 0xF140;
    int WParam = (m.WParam.ToInt32() & 0xFFF0);

    if (m.Msg == WM_SYSCOMMAND &&
        (WParam == SC_MONITOR_POWER || WParam == SC_SCREENSAVE)) return;

    base.WndProc(ref m);
}

Σύμφωνα με MSDN , αν ο κωδικός πρόσβασης προφύλαξη οθόνης είναι ενεργοποιημένη από την πολιτική για Vista ή παραπάνω, αυτό δεν θα λειτουργήσει. Προφανώς προγραμματισμού κινείται το ποντίκι είναι επίσης αγνοείται, αν και δεν το έχω δοκιμάσει αυτό.

Απαντήθηκε 17/08/2008 στις 21:29
πηγή χρήστη

ψήφοι
9

Όταν δουλεύω από το σπίτι, να κάνω αυτό δένοντας το καλώδιο του ποντικιού σε έναν ανεμιστήρα επιτραπέζιο που ταλαντεύεται αριστερά προς τα δεξιά. Διατηρεί τη μετακίνηση του ποντικιού και να κρατά το σταθμό εργασίας από τον ύπνο.

Απαντήθηκε 09/12/2011 στις 21:29
πηγή χρήστη

ψήφοι
2

Κάτι τέτοιο θα πρέπει να εργαστεί (αν και, που θα θέλετε να αλλάξετε το διάστημα).

public Form1()
{
    InitializeComponent();
    Timer Every4Minutes = new Timer();
    Every4Minutes.Interval = 10;
    Every4Minutes.Tick += new EventHandler(MoveNow);
    Every4Minutes.Start();
}

void MoveNow(object sender, EventArgs e)
{
    Cursor.Position = new Point(Cursor.Position.X - 1, Cursor.Position.Y - 1);
}
Απαντήθηκε 05/08/2008 στις 04:07
πηγή χρήστη

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more