Καλώς ορίσατε στο dotNETZone.gr - Σύνδεση | Εγγραφή | Βοήθεια
σε

 

Αρχική σελίδα Ιστολόγια Συζητήσεις Εκθέσεις Φωτογραφιών Αρχειοθήκες

HELP ME PLEASE!

Îåêßíçóå áðü ôï ìÝëïò GeorgeK1984. Τελευταία δημοσίευση από το μέλος micfarmakis στις 09-07-2013, 18:18. Υπάρχουν 6 απαντήσεις.
Ταξινόμηση Δημοσιεύσεων: Προηγούμενο Επόμενο
  •  01-07-2013, 07:39 73013

    HELP ME PLEASE!

    Καλημέρα παιδιά, και καλό μήνα! έχω ένα θεματάκι, λοιπόν έχω ξεκινήσει  και γράφω σε Visual Basic 2008 ένα προγραμματάκι περίπου μοιάζει σαν sidebar, θέλω να μπορέσω να βάλω την δυνατότητα να γίνετε από την επιφάνεια εργασίας προσθήκη αντικειμένων μέσα στο πρόγραμμα μου, π.χ. δηλ να μπορώ να προσθέσω την συντόμευση του media player.Εγώ προσωπικά δεν γνωρίζω πως μπορεί να γίνει κάτι τέτοιο, άλλωστε γ' αυτό σας γράφω. Αν γίνετε κάτι τέτοιο μπορεί κανείς σας να με βοηθήσει;
  •  03-07-2013, 23:04 73021 σε απάντηση της 73013

    Απ: HELP ME PLEASE!

    Αν εννοείς με drag and drop πιάσε τα events ή κάνε override όπως παρακάτω:

    using System;

    using System.Collections.Generic;

    using System.ComponentModel;

    using System.Data;

    using System.Drawing;

    using System.Text;

    using System.Windows.Forms;


    namespace DragDrop

    {

        public partial class frmDragDrop : Form

        {

            public frmDragDrop()

            {

                InitializeComponent();


                this.AllowDrop = true;

            }


            protected override void OnDragEnter(DragEventArgs drgevent)

            {

                if (drgevent.Data.GetDataPresent(DataFormats.FileDrop))

                    drgevent.Effect = DragDropEffects.Copy;

                else

                    drgevent.Effect = DragDropEffects.None;


                base.OnDragEnter(drgevent);

            }


            protected override void OnDragDrop(DragEventArgs drgevent)

            {

                string[] files = drgevent.Data.GetData(DataFormats.FileDrop) as string[];


                if (files != null)

                {

                    foreach (string file in files)

                    {

                        if (System.IO.File.Exists(file))

                            this.BackgroundImage = Icon.ExtractAssociatedIcon(file).ToBitmap();

                    }

                }


                base.OnDragDrop(drgevent);

            }

        }

    }


  •  08-07-2013, 14:57 73036 σε απάντηση της 73021

    Απ: HELP ME PLEASE!

    Ευχαριστώ για την απάντηση φίλε μου, αλλά μάλλον δεν σου έδωσα να καταλάβεις σωστά τι ακριβώς θέλω να κάνω. Αυτό που θέλω να κάνω είναι να μπορεί η εφαρμογή μου να καρφιτσώνει συντομεύσεις από την επιφάνεια εργασίας πάνω της, μπορεί να γίνει κάτι τέτοιο και αν ναι παρακαλώ σε Visual Basic 2008 και όχι σε C#
  •  08-07-2013, 17:18 73037 σε απάντηση της 73036

    Απ: HELP ME PLEASE!

    Μάλλον πρέπει να ξεκαθαρίσεις τί εννοείς "να καρφιτσώνει συντομεύσεις πάνω της". Πως να καταλάβει το drag&drop ενός αρχείου, πως να δείξει τα shortcuts που έχουν προστεθεί με αυτό τον τρόπο, κάτι άλλο? Όσο για τη γλώσσα, δεν είναι δύσκολο να μετατρέψεις κώδικα από τη μία στην άλλη.  


    Παναγιώτης Καναβός, Freelancer
    Twitter: http://www.twitter.com/pkanavos
  •  08-07-2013, 18:36 73038 σε απάντηση της 73036

    Απ: HELP ME PLEASE!

    Περιέγραψε μας το πως θέλεις να γίνεται η διαδικασία, το drag and drop είναι πολύ συνηθισμένος τρόπος γιά "καρφίτσωμα".
    Το παράδειγμα δεν ολοκληρώνει αυτό που θέλεις επιτύχεις αλλά σου δείχνει πως ένα control μπορεί να "καταλάβει" ότι κάποιος χρήστης έχει σύρει ένα link - file απάνω του είτε αυτό είναι από το desktop είτε δεδομένα από μία άλλη εφαρμογή ή control.
    Το πως θα εμφανίζονται τα εικονίδια και το αν θα είναι εικονίδια ή κάτι άλλο it's up to you.
    To παράδειγμα μετατρέπεται πολύ εύκολα σε VB .NET, απλά άλλαξε την γραμμή που λέει as string[] της C# σε TryCast στην VB. NET το οποίο γυρνάει null ( Nothing ) αν δεν μπορεί να κάνει μετατροπή χωρίς να "σκάει".


     

  •  08-07-2013, 21:21 73040 σε απάντηση της 73038

    Απ: HELP ME PLEASE!

    Ρε παιδιά πως αλλιώς να σας το εξηγήσω, θα προσπαθήσω να σας δώσω αυτή τη φορά να καταλάβετε. Αυτό που θέλω είναι να σέρνω πχ μια συντόμευση από την επιφάνεια εργασίας στο πρόγραμμα μου και αυτή η συντόμευση να εμφανίζετε στο πρόγραμμά μου, μετά να την πατάω και να ανοίγει  το συγκεκριμένο πρόγραμμα.  
  •  09-07-2013, 18:18 73048 σε απάντηση της 73040

    Απ: HELP ME PLEASE!

    For the drag n' drop part of the implementation you can find a lot of examples ( e.Data.GetData(DataFormats.FileDrop) as string[] where e:DragEventArgs,a windows shortcut is just a file with the .lnk extension), just keep in mind to store the location of the shortcut (aka some form of repository) and how to display it on your application. http://www.codeproject.com/Articles/3598/Drag-and-Drop-files-from-Windows-Explorer-to-Windo might help you.

    For the  execution

    var proc = new Process();

    procStartInfo.FileName = @"path to actual link \{name of the link}.lnk"; \\ @"C:\Users\Public\Desktop\ComicRack.lnk"

    proc.Start(); 

    PS: Sorry for the English but I work abroad and a greek keyboard is not available. And there is a strong opposition to greeklish use

Προβολή Τροφοδοσίας RSS με μορφή XML
Με χρήση του Community Server (Commercial Edition), από την Telligent Systems