Skocz do zawartości

Randal

Członkowie
  • Postów

    0
  • Dołączył

  • Ostatnio

    Nigdy

Randal's Achievements

Newbie

Newbie (1/14)

0

Reputacja

  1. Ok, znalazlem rozwiazanie, wysokosc wierszy mozna regulowac rozmiarami ikon w imagelist dla listview.
  2. Chcialbym "rozciagnac" moje listview w pionie, nie zmieniajac ilosci wierszy. Czy ktos wie jak mozna zwiekszyc wysokosc wierszy w listview? Moze chociaz jakis pomysl?
  3. Randal

    HANDLE + Get + pamiec

    Wielkie dzieki, kurcze takie kwiatki mnie najbardziej zalamuja, bo niby funkcja typu pobierz handle a tu wali rowno po zasobach systemu. Bill oszalal. Nazwa wskazuje wez uchwyt, a w praktyce - zamiast wciac uchwyt do utworzonego obiektu tworzy nowy obiekt i zwraca do niego uchwyt. Kurna to powinno byc create w nazwie :/ Wiecej jest takich funckcji w systemie?
  4. A ja swego czasu napisalem taka procedurke: // zwraca liczbe dni pomiedzy dwoma datami int RoznicaDat(DATA_CZAS *in2, DATA_CZAS *in1) { DATA_CZAS temp; int sum1, sum2; int a, b; // in1 musi byc wczesniej niz in2 if(in1->rok > in2->rok) return -1; if(in1->rok == in2->rok) { if(in1->miesiac > in2->miesiac) return -1; if(in1->miesiac == in2->miesiac) if(in1->dzien > in2->dzien) return -1; } memcpy(&temp, in1, sizeof(DATA_CZAS)); // oblicz sume dni in1 sum1 = in1->dzien; for(a = 0; a < in1->miesiac - 1; a++) sum1 += ((!(in1->rok % 4)) && (a == 1)) ? 29 : maxdni[a]; for(a = 0; a < in1->rok; a++) sum1 += (a % 4) ? 365 : 366; // oblicz sume dni in2 sum2 = in2->dzien; for(a = 0; a < in2->miesiac - 1; a++) sum2 += ((!(in2->rok % 4)) && (a == 1)) ? 29 : maxdni[a]; for(a = 0; a < in2->rok; a++) sum2 += (a % 4) ? 365 : 366; return sum2 - sum1; } maxdni to tablica 12-elementowa int z iloscia dni poszczegolnych miesiecy (luty = 28 ) Niby dziala
  5. Randal

    HANDLE + Get + pamiec

    Czy takie funkcje jak ImageList_GetIcon powoduja alokacje pamieci?
  6. To chyba jednak nienajlepsze rozwiazanie. Kazdy, nawet pojedynczy, i nawet najglupszy watek w stylu while(true); powoduje w systemie Win XP prawie 100% obciazenia systemu. Czemu tak jest??? Bo WM_TIMER dziala w tle lagodnie i bez hardcore, z tego wzgledu jest baaaardziej elegancki.
  7. Randal

    Odp.

    andrp wielkie dzieki, prostota i geniusz rozwiazania powala - 2 linijki! PS. tylko nie wiem po co ta funkcja max(), bez tego dziala bez problemu
  8. Najlepiej do tego wykorzystac osobny watek. Zakladasz taki watek dla obslugi zmiany tekstu w oknie (lub wielu oknach). Faszerujesz go GetTickCount-ami czy RDTSC-ami i wysterowujesz kontrolki bez zadnego bawienia sie w minimialne timery, blokowanie petli komunikatow, czy inne niepozadane zjawiska. Minus taki ze troche sie trzeba napisac, ale plus ze mozna niezle zbajerowac program wysterowujac wiele okien na rozne sposoby.
  9. Ok, jesli sie nie da w locie fontami zonglowac, to chcialbym zrobic tak: 1. Odczytac wszystkie parametry istniejacego fonta. 2. Zmienic kilka paramsow. 3. Zniszczyc istniejacy font. 4. Utworzyc nowy font. Mam problemy z pkt 1 i 2. W ogole fonty to moja pieta achillesowa :(
  10. Jesli to bylaby prawda - wtedy zmiany w ogole nie odnioslyby skutku, tymczasem okna po dziabnieciu ta procedurka sa nieaktywne (disabled), wiec to chyba nie to, acz nie wiedzialem o tym SetWindowPos, fakt. Chociaz SetWindowPos mam na biezaco w obsludze WM_SIZE, zmiana rozmiaru okna (myszka) nie robi roznicy (fakt ze nie nastepuje to bezposrednio po wywolaniu SWP tylko jakis milard taktow CPU dalej). No to pochwal sie co łaska jak zes tego dokonal, mam nadzieje ze nie przez reczne subklasowanie bo sie pochlastam... Edit by Piasiu Uzywajcie guzika QUOTE gdy kogoś cytujecie
  11. To byloby bez sensu dla kazdej kontrolki tworzyc procedury subclassingu :( Na szczescie poradzilem sobie z tym szczesliwe. Nie wiem dlaczego ale jesli podczas tworzenia (CreateWindow) "Edit" i ustawienia (miedzy innymi) WS_DISABLED - tlo jest szare, napis tez, okno nieaktywne. Ale gdy juz po utworzeniu okna ustawie styl WS_DISABLED to tlo jest biale, i napis czarny, i jednoczenie nieaktywne. Czyli to co chcialem w sumie. Oto moja procedura ustawiajaca styl, tu chyba jest jakis bug :? : // ustawia podany styl okna void UstawStyl (HWND hwnd, DWORD styl) { long stary = GetWindowLong(hwnd, GWL_STYLE); SetWindowLong (hwnd, GWL_STYLE, stary | styl); } LVS_NOSORTHEADER wylacza tylko buttony column-headera (nieaktywne). Chodzilo mi o row-header : czyli na poczatku kazdej poziomej linii listview jest taki button. Wciaz nie wiem jak sie do tego dobrac. Dla lepszego obrazu digital : (0 = puste , 1 = button) 1|1|1|1 // header ListView 1|0|0|0 // wiersz 1 1|0|0|0 // wiersz 2 1|0|0|0 // wiersz 3 Edit by Piasiu Uzywajcie guzika QUOTE gdy kogoś cytujecie
  12. Jest jakis sposob aby zamiast tworzenia wielu roznych fontow edytowac tylko parametry juz utworzonego fontu czy piora ? Czesto mam fonty i piora w zmiennych static, poza tym przeciez to marnotrawstwo bezcennej pamieci. PS. Czy jest moze funkcja systemowa win32 ktora robi zrzut grafiki (screenshot-regionshoot) z np GDI-regionu do pliku *.bmp ? (lub zbior funkcji pomocnych wykonania do takiej operacji)
  13. Randal

    Czas w Windows

    no wlasnie a dlaczego wsprintf oto jest pytanie?? osobiscie wole sprintf, jest lepszy bo sux wsprintf nie ciagnie floatow i paru innych a kiedys robilem to strcpy i itoa i strcat itp :D to byly czasy o ja glupi byl ze hej w obiektowce jest ten bol ze ona oglupia takich jak Luzio, tam na kazdym kroku jest przeciazanie operatorow a pozniej padaja glupie pytania jakby C++ byl jakims klonem paszczaka gdzie lancuchy dodaje sie i chyba nawet odejmuje ;)
  14. Heh, dzieki wam, sporo wskazowek , piasiu jestes boski. Przyznam ze po pierwszym dniu zwatpilem a tu prosze :) muszte te kopalnie posprawdzac
  15. 1. Jak w listview zrobic cos podobnego do NOBUTTONLIKEHEADER , tylko ze dla "row-header"? Chodzi o to by pierwsza w rzedzie pozycja wygladala jak button z textem a nie jak napis na bialym tle. 2. Jaki jest adres servera ftp winapi.org bo zgubilem? (ach te api-example) 3. Ktory to styl wypukly dla np EDIT czy LISTVIEW? Znam tylko plaskie i wklesle i bardziej wklesle, ale wiem ze mozna robic wypukle... help 4. Jak kontrolke "Edit" zmusic zeby byla do odczytu ale z bialym tlem? 5. Czy da sie nie uzywajac okien MDI odpalic na raz 4 okna tak aby kazde mialo rowne prawa jesli chodzi o wyswietlanie i dzialanie ? (np jesli dan parent-hwnd okna rodzica to mi zblokuje rodzica, jesli dan NULL to i tak zblokuje rodzica do czasu az nie klikne na rodzicu...) help, kiedys widzialem ze mozna odpalic na raz jakby 2 te same programy z menu, dialogami itp, z tym ze faktycznie to 1 program 6. Jak w winapi dobrac sie do okien openfile ? to musi byc w systemie.. cos jak DTP - cool zabawka do kalendarza
×
×
  • Utwórz nowe...