Skocz do zawartości

Generał

Członkowie
  • Postów

    0
  • Dołączył

  • Ostatnio

    Nigdy

Wszystko napisane przez Generał

  1. Generał

    Kolory systemowe

    Tło możesz zmienić tak:
  2. Generał

    Okna modalne

    A jak tworzysz to okienko dialogowe bo ja jak użyję: Makra DialogBox to zgodnie z tym co jest napisane w dokumentacji otrzymuję modelne okno dialgowe..
  3. Generał

    Static

    o to chodzi??
  4. Co do pierwszego punktu to chyba o to ci chodzi(ale pewnosci nie dam ,gdyż bardzo trudno zrozumieć to co piszesz ): Napisałeś: A wieć nie stosujesz pierwszego ze sposobów gdyż w takim przypadku skąd kompilator ma wiedzieć że w tej klasie jest taka funkcja i to akurat do niej jest ta funkcja. Możesz mieć 120 klas w w każdej z nich mieć funkcje o nazwie funkcja. Musisz powiedzieć kompialtorowi , która funkcja należy do której klasy a to właśnie robisz poprzez bla::funkcja. Co się tyczy punktu 4: to te :: to operator zasięgu, ale w tym konkretnie użytym przez Ciebie przypadku trudno określić co to ma robić. Ogólnie rzecz biorąć dzieli wartość zmiennej k, przez zmienną k należącą do innego zasięgu. Może ten przykład Ci pomożę: int k=2; int main(int argc, char* argv[]) { { int k=16; printf("%d",k/::k); getch(); } return 0; } Podzieli 16/2... Co do punktu 5 to może chodzi ci o funkcję ... GetCommandFile, bo stwierdzenie "jak pobrać .... w VC++" jest niepoprawne - bo VC ++ to tylko kompilator funkcje masz dane przez język(mian(argc,argv) ) ew. przez WinAPI(wspomniana wyżej GetCommandLine ew. 3 parametr f. WinMain ) TU masz wszystkie(chyba) możliwości.... A temat jeże raczej do C++ tak jak to napisał Pasiu... BTW: Staraj się pisać wyraźnie o co Ci chodzi(a nie tam zamotanie)...szybciej otrzymasz odpowiedź...
  5. Generał

    Jaka funkcja api?

    Zajrzyj... https://www.binboy.org/forum/viewtopic.php?t=5668&highlight=
  6. Generał

    ReBar....

    O ile sie nie mylę to kontrolka ReBar ma te wartości za nic. Zawsze jest położona u góry okna i przyjmuje szerokość okna(co do tego to pewności nie mam - ale pewnie tak jest). Wiec nie zmienisz jej położenia i nie uda ci sie jej utworzyć np. przy dolnej krawędzi okna
  7. Kontrolka List-View wysyła wartośc NM_RCLICK(do rodzica) jako parametr code w parametrze NMHDR w komunikacie WM_NOTIFY(trochę zamieszane to zdanie). W obsłudze tego komunikatu wsytaczy jak sprawdzisz który element jest najbliżej klikniętego punktu (macro ListView_FindItem) a następnie wyświetlasz menu Popup w standardowy sposób..ew. pozycje w menu uzależniasz od elementu...możesz zobaczyć program,który jest dołączony do arta na ten temat na stronie..nie jest to dzieło sztuki,ale może trochę ci pomoże...w razie problemów pytaj...
  8. Generał

    HEH

    Nie pamietam teraz dokładnie ,ale GLOBALNY HOOK klawiatury powinien załatwić sprawę i nie powinien mieć problemów podczas gdy aplikacja jest zamykana.
  9. Uzyj: liczba=GetDlgItemInt(hOkna,ID_Kontrolki,bUdaloSie,bZeZnakiem);
  10. Zainteresuj się Hookiem klawiatury....
  11. Generał

    strcpy();

    Co sie tyczy tego to robisz to tak ,aby powiedziec kompilatorowi ,że ptr jest wskaźnikiem do funkcji przyjmującej jeden parametr będący wskaźnikiem do typu char a zwracający int. Co do sprawdzania tego Exe to chyba dobrze... to tyle co mogę powiedzieć...moze i bym cos powiedzial nt. tego argc..ale nie bardzo rozumiem co znaczy "jeśli piszą printf("%d",argc); nie ma?? ;/ " a napewno uruchamiasz program z jakimiś parametrami?? Bo jezeli nie to argc =0...
  12. Generał

    SetWindowLong

    Sugerowałem się tym ,że jak pisałem programik dodający styl przeźroczystości (GWL_EXSTYLE) to nie trzeba było takich manewrów wyprawiać. Styl od razu był akceptowany i ustawiany. A co do działania to napewno działa..bo sprawdzałem :D
  13. Generał

    SetWindowLong

    A jednak(po wiekszym wczytaniu się w MSDN) okazało się ,że opracaje te są cachowane. A więc trzeba dać: SetWindowPos(hWnd,HWND_TOP,0,0,300,200,SWP_FRAMECHANGED); aby zmiany zostały wprowadzone..ważny jest ostatni parametr..pozostałe musisz dobrać tak aby pasowały do tego co chcesz uzyskać... :)
  14. Generał

    SetWindowLong

    Wydaje mi się ,że nie trzeba odświeżać okna ,gdyż samoczynnie styl jest uwzględniany ,ale mogę się mylić. Rzuć kodem...to zobaczymy może coś innego jest złe..
  15. Generał

    INI

    Co do usuwania to po prostu użyj zwykłej funkcji DeleteFile lub podobnej. A co się tyczy tworzenia to pierwszy zapis do nieistniejącego pliku za pomocą WritePrivateProfileString tworzy go...
  16. Generał

    INI

    MSDN i ja wiemy :D WritePrivateProfileString("Sekcja1","Klucz","Wartosc","c:\\profile.ini"); WritePrivateProfileString("Sekcja1","Klucz2","Wartosc2","c:\\profile.ini"); GetPrivateProfileString("Sekcja1","Klucz","WartoscDomyslna",bufor,sizeof(bufor),"c:\\profile.ini"); Ale *.INI to zaszłość z 16-bitowej Windy...MSDN zaleza stosowanie rejestru zamiast plików *.INI
  17. Co do przykładu to zamist z MSDN(bo tam oczywiście zamotali) dam proste trzy linie kodu: WritePrivateProfileString("Sekcja1","Klucz","Wartosc","c:\\profile.ini"); WritePrivateProfileString("Sekcja1","Klucz2","Wartosc2","c:\\profile.ini"); GetPrivateProfileString("Sekcja1","Klucz","WartoscDomyslna",bufor,sizeof(bufor),"c:\\profile.ini"); Dodam ,że pliki INI to pozostałość po 16-bitowym systemie...MS zaleca rejestr do przechowywania danych związanych z aplikacją... Co do odczytania danych z ctrl+alt+delete to pewnie też nie będzie tak prosto(czemu ty wszystko chcesz aby było prosto?? ). Ale możesz sobie wylistować procesy, okna i pokna potomne za pomocą EnumProcesses,EnumWindows,EnumChildWindows. A co się tyczy UNICODE to go się nie wywołuje(no w sumie można i tak powiedzieć)...jest to standrad ,że znak jest na 2 bajtach reprezentowany. Po prostu dajesz na początku #define UNICODE(a może już nawet nie trzeba ,gdyż pewnie to już aplikacje standardowo przymują) i używasz funkcji , które obługują 2B znaczki...np. wsprintf zamiast sprintf. Za dużo by o tym pisać....przeczytaj sobie w MSDN :-) (znów ten MS)....
  18. 1.Co do tych znaków ascii. To pod dosem miałeś 255 znaków (co pewnie wiesz) i tam położenie polskich znaków diakrytycznych (chyba) nie było ustalone. Natomiast w windzie z UNICODE to już jest chyba ustalone,ale jak je wypisać...zaraz popatrzę i może ajkiś kod rzucę. 2.No jest funkcja strtol tam możesz wybrać bazę ,ale ona przekształca tekst przy podstawie na liczbę long. Poczytaj dokładnie w jakimś opisie na sieci. 3. int sock,i; hostent *host; struct sockaddr_in gniazdo; char buf[20000]; char dane[]="liza.umcs.lublin.pl\0"; char daneaddr[]="217.77.100.101"; unsigned long ul_addr; int wyn; char *wsk=buf; WSAStartup(MAKEWORD(1,1),&wsaData); host = gethostbyname(dane); if (host!=NULL) { memcpy((char *)&gniazdo.sin_addr,host->h_addr,host->h_length); } else { cout<<WSAGetLastError(); if ((ul_addr=inet_addr(daneaddr))!= INADDR_NONE) memcpy((void *)&gniazdo.sin_addr,(void *)&ul_addr,sizeof(in_addr)); /*cout<<"Nie udala sie zaminic nazwy na adres"; getch(); return -1;*/ } sock = socket(PF_INET,SOCK_STREAM,0); if (sock==NULL) { cout<<"Nie udalo sie utworzyc gniazda"; getch(); return -1; } gniazdo.sin_family = AF_INET; gniazdo.sin_port = htons(80); if ((wyn=connect(sock,(struct sockaddr *)&gniazdo,sizeof(gniazdo)))!=0) { close(sock); cout<<"Nie udalo sie polaczyc"; getch(); return -1; } send(sock,"GET / HTTP/1.0\r\n\r\n",strlen("GET / HTTP/1.0\r\n\r\n"),0); int wsk=0; while ((i=recv(sock,buf,sizeof(buf),0))>0) { wsk+=i; cout<<buf; } close(sock); cout<<"Nic ciekawego"; getch(); return 0; Mały przykład pisany na szybko ,zapewne z masą błędów ,ale pokazuje mniej więcej zasadę...oczysicie jest to zrobione na funkcjach blokujących...jak chcesz nieblokujące to będziesz musiał przerobić Co do tutów to polecam ksiązkę: Pisanie programów komputerowych. Andrzej Sopala (MIKOM) - spoko książeczka. 4. Pyrzykład z INI?? Przecież w MSDN jest spoko przykładzik - chyba nie ma sensu go tutaj przekopiowywać?(a może jest)
  19. w obecnej chwili nie mam zielonego pojęcia..ale może sprecyzuj do czego Ci potrzebne to kody ASCII?? Oj chyba nie ma takiej funkcji..ale przecież pisze się ją w kilka chwil.. WritePrivateProfile*, GetProfileSection.GetPrivateProfileSection.. Malutki?? Oki.... poczytaj sobie o gniazdach a następnie dokumentację RFC...otwórz gniazdo , wyślij zapytanie i odczytaj to co serwer odpowie...10 minut roboty :-) to i++ wywal poza if'a(ale chyba i tak bedziesz potrzebowal drugiej zmiennej do indeksowania tablicy)....o ile dobrze zrozumiałem...
  20. Generał

    Re: katalogi

    Wystarczyło poszperać i to nie dalej niż na tej stronie :D. Na głowniej jest link do Win32 - Extra Documentation w nim jest klika doców a wsród nich ShellDoc opisujący właśnie tę funkcję jak i kilka innych ciekawych(np. interfejs IShellFolder)...
  21. Generał

    Tekst

    Odchudza wielkość wynikowego exe...powoduje nie włączanie niektórych zbędnych bibliotek jeżeli nie są one wymagane...ale powiem szczerze ,że nie zauważyłem róznicy w wielkości... A co się tyczy literek i OpenGL to zajrzyj na strone NeHe Były kursy na ten temat
  22. Generał

    Re: katalogi

    A sprawdzałeś funkcję SHBrowseForFolder bo chyba o to Ci chodziło...szczególy funkcji w WinAPI
×
×
  • Utwórz nowe...