begin process at 2012 02 11 12:55:18
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C#

 > 

Windows

 > 

API

 > 

Position des icônes sur le bureau


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Position des icônes sur le bureau

vendredi 2 novembre 2007 à 10:48:38 | Position des icônes sur le bureau

alvinp

Membre Club
Salut,

Je débute en Csharp mais je suis quand même un peu dedans, je suis sur un petit projet que les programmeurs confirmés seraient probablement faire sans problème!

En fait, je cache les icons du bureau (pour le moment avec le registre --> pas cool) et j'ai fait un control qui fera mon fichier.
Donc tout est bien rangé mais je ne sais pas comment je pourrais récupérer la position des icônes du bureau pour que l'utilisateur ne soit pas obligé de tout remettre par lui même!

Il me suffit d'un code qui me récupère ces informations pour y arriver mais moi et les API, c'est pas mon truc (si cela fonctionne avec API)!!

Merci d'avance

Pseudo :: PyroFrissons ou Mr Blagues
vendredi 2 novembre 2007 à 11:09:05 | Re : Position des icônes sur le bureau

TheSaib

Administrateur CodeS-SourceS
Réponse acceptée !
Tu fais un SendMessage sur le handle du bureau avec LVM_GETTITEMCOUNT comme paramètre ensuite tu boucle sur le nombre d'éléments en faisant un SendMessage avec LVM_GETITEMPOSITION en paramètre sur le handle du bureau .

Il te reste  pour obtenir les coordonnées à faire un CopyMemory de ton pointeur lparam.


::|The S@ib|::
MVP C#.NET
vendredi 2 novembre 2007 à 12:05:47 | Re : Position des icônes sur le bureau

alvinp

Membre Club
Je te remercie, très gentil et très rapide

Pseudo :: PyroFrissons ou Mr Blagues
vendredi 2 novembre 2007 à 13:48:16 | Re : Position des icônes sur le bureau

alvinp

Membre Club
Je suis arrivé à avoir le handle mais le SendMessage qui renvoi le nombre d'icônes me donne tout le temps 0!

Voici mon code ::
int ItemText = 0;
int ItemPos = 0;
IntPtr hwnd = FindWindowEx(IntPtr.Zero, IntPtr.Zero, "ProgMan", "Program Manager");
if (hwnd != IntPtr.Zero)
{
    int ItemCount = SendMessage(hwnd, LVM_GETITEMCOUNT, 0, 0);
    MessageBox.Show("Handle :: " + hwnd.ToString() + " avec " + ItemCount + " icônes!");
    for(int i = 0; i < ItemCount; i++)
    {
        SendMessage(hwnd, LVM_GETITEMTEXT, i, ItemText);
        SendMessage(hwnd, LVM_GETITEMPOSITION, i, ItemPos);
        MessageBox.Show(hwnd.ToString() + " // n°" + i + " : " + ItemText + " de position : " + ItemPos);
    }
}else{
    MessageBox.Show("Handle du bureau détaché!");
    Application.Exit();
}
Fin du code

Aidez-moi à comprendre mon erreur!


Pseudo :: PyroFrissons ou Mr Blagues
vendredi 2 novembre 2007 à 14:55:37 | Re : Position des icônes sur le bureau

TheSaib

Administrateur CodeS-SourceS
ton handle ne pointe pas vers la bonne liste :

IntPtr hwnd= FindWindow("progman", null );
hwnd= FindWindowEx(hwnd, IntPtr.Zero, "shelldll_defview", null
);
hwnd= FindWindowEx(hwnd, IntPtr.Zero, "syslistview32", null);

int ItemCount = SendMessage(hwnd, LVM_GETITEMCOUNT, 0, IntPtr.Zero);



::|The S@ib|::
MVP C#.NET


Cette discussion est classée dans : bureau, position, api, icônes


Répondre à ce message

Sujets en rapport avec ce message

Problème avec l'API SetSysColors [ par bob94700 ] Bonjour,   J'utilise la fonction suivante : SetSysColorsavec comme paramètre COLOR_BACKGROUND afin de changer la couleur de fond du bureau et à chaque les API windows et c# [ par otofraise ] Bonjour a tous,Habitue au c++, je debute avec c# et je dois dire que je suis pomme .J'aimerais utiliser les api windows mais voila, je ne retrouve pas mouse down + position de la souris ? debutant [ par jimmy69 ] Bonjour a tous ,debutant sous visual studio.net je me mets au langage c# ! pas facile du tout :-( !J'essaye de faire des actions en faisant un clic ga Lister les fonctions d'une dll non-managée [ par li9 ] Salut tout le monde, est-ce que quelqu'un aurait une idée de ce qu'il faudrait faire pour lister les fonctions( et leurs parametres ) d'une dll qui n' Espace libre CD-R /// CD-RW [ par MAQFAB ] Bonjour,Mon appli C# a besoin de connaître l'espace libre d'un CD.J'ai bossé avec l'API GetDiskFreeSpace et ça marche bien pour les disques durs, mais textbox determiner position curseur [ par emmanuel9 ] Bonjour, Quelqun serait t'il comme determiner la position du curseur dans un textbox ? J'ai bien essayé textbox_decimalControl1.set_SelectionLength(2) [C#] Placer UN comboBox dans une dataGridView [ par piefire ] Bonjour à tous, (Sous VS 2005 Beta2), je possède une dataGridView remplie par une dataTable. je voudrais pouvoir placer des comboBox a la place de ce utilisation de l'api getscrollinfo [ par Fildomen ] Salutj'éssaie d'utiliser cet api dans un prog ou je dois savoir la longueur du texte d'un rtb, voila le code mais ca marche po private <FONT color=#00 Extrait une image d'un film pour l'afficher dans une picturebox [ par astragoth66 ] Bonjour, Voila j'essaie d'extraire une image d'un films pour ensuite faire du traitement d'image dessus, mais j'aimerai afficher image par image dans Scroll + Problème [ par emmanuel9 ] Bonjour à tous, J'ai un panel scrollable et je voudrais  choisir la position du scroll. Que le curseur à droite se mette à la position ou je veux en


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

Photothèque

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,421 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales