Daryk opensource: daugiau programuotojų matys visą tavo kodą daugiau galės jį tobulinti ir pritaikyti daugumos reikmėms. Arvydas On 04/11/2011 12:13, Jornada Del Muerto wrote: > Sveiki, > Na stai tobulinu ta zadeta isreleasint free meniu ir susiduriau su > keliom problemelem, kad uz mane kas googlintu neprasau, bet gal kazkas > kazka tokio dare, susidure su zemiau vardintom problemom ir gali patart > ar zino koki gera url kaip tai issprest. > 1. ToolStrip 3rd lvl items smash (kaip as pavadinau) problema > Ta visa meniu tobulinau, piesiau kelis rinkinius ikonu, padariau kad > eitu rinktis spalvas, fonta, na ir 2 ikonu dydziai dabar galimi 16x16 ir > 32x32, bet vat su 32x32 susiduriau su problema: > Kaip matote 3 lygio generic sukurtas ToolStripMenuItem objektas > nedraugauja visai su 32x32 ikonom, elgesys pas ji toks lyg butu 16x16, > bandziau dirbtinai nurodyt height 32 kada buna 32x32 ikonu mode bet > nepadeda... > Pacio Toolstrip inicializacija buna tokia: > switch (_ImagesSize) > { > case Images.ImageSize.Size16x16: > i.ImageScalingSize = new Size (16, 16); > break; > case Images.ImageSize.Size32x32: > i.ImageScalingSize = new Size (32, 32); > break; > Si inicializacija daro puiku efekta ant pacio toolstrip itemu ir > toolstripdropdownmenu itemu, bet va ju vaikai toolstripmenuitem veikia > negerai, kur _ImagesSize cia enumas kuri nustato useris pagal tai > renkamas ikonu setas, ir kaip matote nustatomas ImageScalingSize paciam > pagrindiniam ToolStrip objektui, i = ToolStrip. > 2. Fullscreen app detect - Problema Nr. 2 > Kaip buvau minejas sis Bar nedraugavo stipriai su Remote Desktop > Connection esant jam fullscreen modej, jokiu problemu nebuna su 3D > application fullscreen modej, tada meniu nesimato, bet vat tokie kaip > teamviewer, remote desktop connection fullscreen rezime pjaunasi su siuo > app, del to nusprendziau kad reikia detectint kas tuo metu aktyvus ir ar > fullscreen ir jei fullscreen yra kazkokia APP tai tada si meniu kavoti. > Po to tam kuri laika googlinau ir kaip ir radau visai nebloga funkcija, > tiesa ja kazkiek tobulinau bet vis dar veikia negerai. Kodas toks: > public static bool IsForegroundWindowFullScreen() > { > int scrX = User32.GetSystemMetrics(User32.SM_CXSCREEN), > scrY = User32.GetSystemMetrics(User32.SM_CYSCREEN); > IntPtr handle = User32.GetForegroundWindow(); > if (handle == IntPtr.Zero) > { > // if it Zero then not > return false; > } > // mano dadetas tikrinimas > else if ( > handle == User32.GetDesktopWindow () || > handle == User32.GetShellWindow ()) > { > // if it desktop or shell then not > return false; > } > User32.RECT wRect = new User32.RECT(); > if (!User32.GetWindowRect(handle, ref wRect)) > { > return false; > } > return scrX == (wRect.Right - wRect.Left) && scrY == (wRect.Bottom - > wRect.Top); > } > *Na rezultate kaip ir veikia, tik yra viens bugas, jei darau show > desktop dingsta tada mano toolbaras, jei kokia nors ne fullscreen app > gauna fokusa viskas susitvarko, bet po show desktop neturetu dingt...* > Tiesiog gal kas tures kokia konstruktyvia ideja del vienos ar kitos > problemos :) > JDM.