J'ai un fichier Cursor animé (* .ani) dans les ressources et je veux l'afficher en tant que curseur dans mon application. Comment puis-je le charger à partir des ressources? J'ai cherché dans Internet, mais il n'y a que des façons de le montrer quand on a un vrai fichier et s'il n'est pas intégré dans les ressources.Charger un curseur animé incorporé à partir de la ressource
1
A
Répondre
2
// modification de ressources ici est: octet [] ressource variable dans l'appel
// classe modifiée par Yvan Genesse
public class AdvancedCursorsFromEmbededResources
{
// modified by Yvan Genesse November 29 2010
// C# example tested in MS Visual Studio 2010 Ultimate version
// University Student in E-Business @ Laurentian University
// in your form code
/*
try
{
// from file
//this.Cursor = AdvancedCursors.Create(Path.Combine(Application.StartupPath, "flower_anim.ani"));
// from resouces modification here is : byte[] resource in the call
byte[] Embeded_Cursor_Resource = Properties.Resources.flower_anim; // the animate cursor desired
this.Cursor = AdvancedCursorsFromEmbededResources.Create(Embeded_Cursor_Resource);
// or this way also works
this.Cursor = AdvancedCursorsFromEmbededResources.Create(Properties.Resources.flower_anim);
}
catch (Exception err)
{
MessageBox.Show(err.Message);
}
*/
[DllImport("user32.dll")]
static extern IntPtr CreateIconFromResource(byte[] presbits, uint dwResSize, bool fIcon, uint dwVer);
// modification here is : byte[] resource in the call
public static Cursor Create(byte[] resource)
{
IntPtr myNew_Animated_hCursor;
//byte[] resource = Properties.Resources.flower_anim;
myNew_Animated_hCursor = CreateIconFromResource(resource, (uint)resource.Length, false, 0x00030000);
if (!IntPtr.Zero.Equals(hCursor))
{
// all is good
return new Cursor(myNew_Animated_hCursor);
}
else
{ // resource wrong type or memory error occurred
// normally this resource exists since you had to put Properties.Resources. and a resource would appear and you selected it
// the animate cursor desired is the error generator since this call is not required for simple cursors
throw new ApplicationException("Could not create cursor from Embedded resource ");
}
}
}
+0
Merci Yvan :) – Wonderwhy
2
Intégrez le fichier ani en tant que ressource et utilisez les fonctions Windows CreateIconFromResource pour le créer et DestroyIcon lorsque vous avez terminé.
IntPtr hCursor;
try
{
hCursor = CreateIconFromResource(resource, (uint)resource.Length, false, 0x00030000);
this.Cursor = new Cursor(hCursor);
...
}
finally
{
this.Cursor = Cursors.Normal;
DestroyIcon(hCursor);
}
Questions connexes
- 1. Charger le fichier à partir de la ressource
- 2. C++ curseur animé
- 3. Charger une ressource contenue dans un bocal
- 4. Comment exécuter un exécutable incorporé en tant que ressource
- 5. Charger la ressource à partir de JAR sans accéder à ClassLoader?
- 6. Format de modèle animé recommandé à charger dans OpenGL
- 7. Impossible de trouver la ressource Web à partir de l'assembly
- 8. Comment charger une chaîne à partir de la ressource d'un processus différent?
- 9. Charger une ressource png dans un CBitMap
- 10. Lecture du fichier incorporé à partir de l'assemblage
- 11. .NET Compact Framework 3.5 curseur d'attente transparent animé
- 12. Créer une ressource à partir de la page asp.net
- 13. Modification de PowerPoint incorporé à partir d'Excel VBA
- 14. Comment utiliser un manifeste incorporé en tant que ressource? (Contrôles de style Windows XP/Vista)
- 15. comment mettre un document incorporé dans un document incorporé?
- 16. Menu déroulant animé JavaScript
- 17. Comment lire l'audio à partir d'une ressource
- 18. Comment ajouter ServiceReference à un fichier incorporé?
- 19. Charger à partir de Properties.Settings à ArrayList?
- 20. précharger un gif animé
- 21. Obtenir un fichier binaire à partir d'une ressource en C#
- 22. Un RenderTargetView ne peut être créé à partir d'une ressource
- 23. charger XML à partir de la variable, pas de fichier
- 24. Lecture d'un fichier XML à partir d'une ressource
- 25. stocker/charger un tableau numpy à partir de fichiers binaires
- 26. Comment fermer un curseur DB2 à partir d'un client OLEDB?
- 27. Créer un curseur semi-transparent à partir d'une image
- 28. Changer le curseur pour charger l'animation
- 29. Comment charger un fichier texte à partir de ressources dans VC++?
- 30. Charger Web.Config en tant que ressource incorporée dans une DLL dans ASP.NET MVC
s'il vous plaît ne pas utiliser "Salut", " Merci ", ou des signatures ici sur SO. Ce n'est pas un forum de discussion. –
@John: Salut, John! Vous voulez dire que vous ne voulez pas discuter? Merci d'avoir lu ça! –
@ John: Ok, désolé, je ne le savais pas – Wonderwhy