Drag nDrop sur le racourcis de mon programme
Bonjour,
pour Decouvrir C# je me suis fait une application qui affiche des diapos(images) pour les indexer dans une base. quand l apllication est ouverte le drag n drop marche. mais quand je drag n drop sur le .exe l application s ouvre mais pas les images. dans le MAIN de la form Principal je dois peut etre mettre en argument un tableaux d objets, pour l instant j ai declarer un tableau de string
si quelqu un a une idée
:oops:
Bon j ai Trouvé une solution
:yaisse2: Voila, en faisant des test j ai trouvé une solution.
d abord ma form Mdi principale s appelle frmMain, j ai une fonction ouvrirFenetrediapos(qui prend un tableaux de string en argument) elle s occupe des tests de validité que c est bien une image et ouvre les fenetres filles.
j ai déclarer un tableaux de string diaposAouvrir
Code:
private string[] diaposAouvrir = new String[]{};
en debut de la classe frmMain.
puis je surcharge frmMain pour accepter en argument un Tableau de string
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14
| public frmMain()
{
InitializeComponent();
}
/// <summary>
/// Sucharge du contructeur pour acepter en tableaux de string en arguments
/// </summary>
/// <param name="DiaposAouvrir">tableaux qui sera passé par le Main lors du ApplicationRun</param>
public frmMain(string[] DiaposAouvrir)
{
InitializeComponent();
// le tableaux n est pas vide donc je rempli ma variable diaposAouvri
if (DiaposAouvrir.Length > 0){ this.diaposAouvrir = DiaposAouvrir; }
} |
puis dans le load de frmMain je teste si diaposAouvrir est rempli et je la lance la fonction ouvrirfenetresDiapos
Code:
1 2 3 4 5
| private void frmMain_Load(object sender, EventArgs e)
{
// ..... autres codes a executer
if (diaposAouvrir.Length > 0) { ouvrirFenetresDiapos(diaposAouvrir); }
} |
(pour Visual Studio) puis dans program.cs je modifie la fonction Main
pour quelle aceppete en arguments un tableau de string
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| static class Program
{
/// <summary>
/// Point d'entrée principal de l'application.
/// </summary>
[STAThread]
static void Main(string[] e)
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
if (e.Length > 0)
{
Application.Run(new frmMain(e));
}
else { Application.Run(new frmMain());}
}
} |
voila ca marche, je vais voir a optimiser et surtout a tester avec des fichiers autres que text et images
n hesitez pas a me corriger si je n ai pas pris la bonne solution mais ca fonctionne