Új hozzászólás Aktív témák
-
ArchElf
addikt
válasz
Rodrighez
#967
üzenetére
És itt egy hack:
public static void ChangeCursor(string path, Form Form)
{
Cursor cursor = new Cursor(LoadCursorFromFile(path));
Form.Cursor = cursor;
}
[DllImport("user32.dll", EntryPoint="LoadCursorFromFileW", CharSet=CharSet.Unicode)]
private static extern IntPtr LoadCursorFromFile(string str);Itt viszont vigyázni kell, hogy a LoadCursorFromFile egy handle-t hoz létre, amit ezzel a módszerrel nem tudsz felszabadítani. Amenyiben csak egy ikon kell egyszerre, belerakhatod a LoadCursorFromFile() hívás eredményét egy statikus változóba (de több esetén is berakhatod mondjuk egy HashTable-be) és amikor kilépsz, vagy kurzort váltasz, akkor fel kell szabadítani a handle-t egy CloseHandle hívással:
[DllImport("kernel32.dll", SetLastError=true)]
private static extern bool CloseHandle(IntPtr hObject);
[DllImport("user32.dll", EntryPoint="LoadCursorFromFileW", CharSet=CharSet.Unicode)]
private static extern IntPtr LoadCursorFromFile(string str);
private static IntPtr iconHandle;
public static void ChangeCursor(string path, Form Form)
{
if (iconHandle != null) CloseHandle(iconHandle);
iconHandle = LoadCursorFromFile(path)
Cursor cursor = new Cursor(iconHandle);
Form.Cursor = cursor;
}Persze ebből is hiányzik még a hibakezelés, mega form lezárásakor a handle felszabadítása.
AE
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Gyors, vékony és könnyű Lenovo Thinkpad X1 Carbon gen 8 (10.gen Core I5 16Gb DDR4 512Gb SSD) laptop!
- Samsung Galaxy S24 Ultra 256GB + töltőfej
- Apple iPhone 15 Pro Max 256GB, Kártyafüggetlen, 1 Év Garanciával
- BONTATLAN Lenovo ThinkCentre M70s SFF Business Időtálló Asztali gép -50% i5-14500 16/512 770 Magyar
- Tervezős Lenovo Thinkpad P14 S gen2 Laptopom (Nvidia 4Gb-os videokártyával) kifogástalan eladó!
- Bomba ár! HP Elitebook X360 1030 G2 - i5-7G I 8GB I 256SSD I 13,3" FHD Touch I Cam I W11 I Gari!
- HIBÁTLAN iPhone 15 Pro 128GB Blue Titanium -1 ÉV GARANCIA -Kártyafüggetlen, 100% Akkumulátor
- Eladó Samsung Galaxy Tab A9 4/64GB / 12 hó jótállás
- Kezdő Gamer PC-Számítógép!Csere-Beszámítás! I5 6500 / RX580 8GB / 16GB DDR4 / 512 SSD
- Telefon felvásárlás!! Honor Magic6 Lite, Honor Magic6 Pro, Honor Magic7 Lite, Honor Magic7 Pro
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest

