Skocz do zawartości

Phoenix

Członkowie
  • Postów

    0
  • Dołączył

  • Ostatnio

    Nigdy

Wszystko napisane przez Phoenix

  1. Witam, co do Twojego pytania to sprawdzić na pewno idzie (zobacz na ikonke w tray'u przy polaczeniu np: lokalnym). Niestety jak to sprawdzic to juz inna para butow :-), ale mysle ze sprowadza sie to do wypelnienia jakies struktury i wywolaniu funkcji. Moze na MSDN bedzie cos na ten temat ? Pozdrawiam.
  2. Phoenix

    Edit

    Jak dla mnie mozesz zrobic to na dwa sposoby dodac ES_SETLIMITTEXT podczas tworzenia kontrolki EDIT: // tworzenie kontrolki EDIT HWND hEdit; hEdit = CreateWindow("EDIT", NULL, WS_CHILD | WS_VISIBLE | WS_BORDER | ES_MULTILINE | WS_VSCROLL | EM_SETLIMITTEXT, 10, 40, 150, 200, hOkna, (HMENU)101, (HINSTANCE)GetWindowLong(hOkna,GWL_HINSTANCE),0); Lub drugi sposob, kiedy nie ustawiles ES_SETLIMITTEXT w fukncji CreateWindow. Wyslasz wiadomosc funkcja SendMessage(.....); SendMessage(hEdit, EM_SETLIMITTEXT, NULL, NULL); hEdit to oczywiscie uchwyt do Twojej kontorlki. Jezli cos jest nie jasne to pisz. Pozdrawiam
  3. Phoenix

    Duzy problem ! Serio

    Nie wiem moze sie myle, ale Twoj problem jest raczej zwiazny ze standardem, sprobuje zamiast #include <iostream.h> #include <fstream.h> uzyc: #include <iostream> #include <fstream> i dopisz jeszcze linie (przed wywolaniem int WINAPI WinMain(...) ) using namespace std; Pozdrawiam i pisz smialo jesli nadal jest cos nie tak.
  4. Phoenix

    PROBLEM Z IF ELSE

    Z tego co widze tab1 i pass sa to tablice zankow i do porownania stringow nie mozesz uzyc instrukcji if( tab1 == pass ) // zle Do porownania stringow uzywaj funkcji: int strcmp( const char *string1, const char *string2 ); Jezli wartosci zwrocona bedzie 0 to dwa lancuchy znakow sa identyczne. if( (strcmp(tab1, pass)) == 0) { cout << "Haslo ok"; } Pozdrawiam mam nadzieje ze cos pomoglo :), jakby co to pisz.
  5. Phoenix

    Pytanie o Display

    Miło się patrzy jak ludzie się godzą :D Pozdrawiam
  6. Phoenix

    Wstawki ASM

    Witam, co do pierwszego pytania to odpowiedź znajdziesz pod tym adresem https://warsztat.pac.pl/artykuly/asmicpp/asmicpp.htm. Mam nadzieje, że link bedzie pomocny. A co do drugiego pytania to rownież mi przyda się przypomnienie :) Pozdrawiam
  7. Oki wielkie dzieki za pomoc Pozdrowka :)
  8. Phoenix

    ReBar....

    A czy w ten sam sposob mozna zmieniac polozenie Toolbar'a ? Pozdrawiam
  9. Phoenix

    ReBar....

    Z tego co wiem ten sam problem dotyczy kontrolki toolbar, wiec calkiem mozliwe ze pawlos ma racje :) Pozdrawiam
  10. Phoenix

    Edit

    Natrualnie ze kontrolka Edit posiada mozliwosc zrobienia jej jako multiline. Nalezy ustawic w opcjach kontrolki jako Multiline lub przy tworzeniu w funkcji CreateWindow dodac jej styl ES_MULTILINE. Pozdrawiam
  11. Witam. Mam kontrolke ListView (na caly obszar roboczy) i chce w niej wyswietlic menu kontekstowe po zaznaczeniu danego elementu i kliknieciu prawego przycisku myszki. Jaki komunikaty musze obsluzyc ? I jak wyswietlic menu kontekstowe w ListView ? Z gory dziekie za odpowiedz Pozdrawiam :)
  12. Phoenix

    Int & char

    O ile dobrze Cie rozumiem to chodzi o zamiane z elementu tablicy typu char na zamiane na typ int ? Jezeli tak to najlepiej zamienic char na int funkcja atoi. #include <stdlib.h> int atoi(const char *s); Jezeli Cie zle zrozumialem to pisz :) Pozdrawiam
  13. Phoenix

    edit - problem

    Nie wiem czy istnieje jakas funkcja w API do tego celu jednak mozesz uzyc funkcji atoi, ktora zamienia ascii na int. #include <stdlib.h> int atoi(const char *s); Pozdrawiam
  14. Phoenix

    edit - problem

    Musisz pobrac uchwyty tych kontrolek funkcja GetItemDlg np: HWND hEdit; hEdit = GetItemDlg(uchwyt_okna, ID_EDITA) Nastepnie sciagasz do bufora tekst z kontrolki char cBufor[10]; GetWindowText(hEdit, cBufor, iStringLen); Aby znalezc dlugosc stringa uzyj funkcji GetWindowTextLength int iStringLen; iStringLen = GetWindowTextLength(hEdit); Do wstawiania tekstu w kontrolce uzyj funkcji SetWindowText, analogiczne musisz pobrac uchwyt kontrolki do ktorej chcesz wstawic dane. HWND hEditTwo; hEditTwo = GetDlgItem(uchwyt_okna, ID_EDITATWO); SetWindowText(hEditTwo, bufor_z_danymi); Jezeli chcesz wstawic dane po wcisnieciu klawisza lub butona to obsluz dany komunikat zwiazany z danym klawiszem. W razie problemow pisz smialo :) Pozdrawiam
  15. Phoenix

    strcpy();

    Nie za bardzo rozumiem o co chodzi ? Czego nie widzisz ? Jezeli skopiujesz kod i odpalisz pod konsola np. w taki sposob: nazwa_programu.exe parametr, to powinno byc ok. Jezeli masz problem na poziomie kompilacji to sprawdz czy wybrales tworzenie projektu pod konsole. Napisz jakiego kompilatora uzywasz ? Napisze krotko - goto nie powinno sie stosowac poniewaz nie swiadczy to dobrze o programie (programiscie), kod z wieksza ilosci takich instrukcji staje sie bardzo nieczytelny i zawily. Natomiast break uzywa sie do przerwania danej instrukcji takich jak: case, for, while itp. Continue dziala odwrotnie do break :) Pozdrawiam
  16. Phoenix

    strcpy();

    Pierwsza funkcje mozesz stosowac w dosowej konsoli dla kompilatora Visual'a i Borland'a (nie wiem jak jest dla innych) - sprawdzalem i chodzi poprawnie. main(int argc, char * argv[]) { if(!argc[1]) { printf("Nie podano parametru. Koniec programu"); exit(0); } else { printf("Podanie parametru 0: %s", argv[0]); printf("Podanie parametru 1: %s, argv[1]); } return 0; } Musisz pamietac o tym ze wartosc argc jest na poczatku rowna 1, gdyz jest to sciezka do Twojego programu. A parametry w argv sa zawsze podawane jako string, wiec jesli chcesz podac parametr jako liczbe np.: int to nalezy ten parametr zmienic funkcja atoi. Co do sprawdzanie czy dany plik jest exe mozesz sprobowac tak: Kopiujesz nazwe pliku wraz z rozszerzeniem do bufora i odcinasz 4 ostatnie znaki ( rozszerzenie np: ".exe") kiedy to masz porownujesz je czy 4 pobrane znaki sa rowne ".exe". W ten sposob na pewno unikniesz problemow z takimi plikami jak "nazwa_pliku.exe.txt". Sposob ten na pewno idzie przedstawic prosciej, ale to jedyne co aktualnie wpadlo mi do glowy :) Pozdrawiam jesli chcesz moge umiesci Ci kod ktory sprawdza czy dany plik to ".exe". Dzialajacy na zasadach jak opisalem wyzej
  17. Mialem podobny problem przyczyna byla blednie wypelniona struktura DCB sprawdz dokladnie ustawienia, bit parzystosci, bit stopu itp. Jak chcesz to moge podeslac pola calej struktury. Po drugie wykorzystaj program terminal dzieki ktoremy bedziesz mogl sprawdzic co odbierasz. Pozdrawiam
  18. Wiam wejdz na www.warsztat.pac.pl i przegladnij sobie forum znajdziesz tam troszke informacji na temat winsock'a Pozdrawiam
  19. Witam wklej troszke kodu moze wtedy cos poradzimy. Pozdrawiam
  20. Witam odpowiem czesciowo na Twoje pytanie, a w zasadzie tylko na ostatnie :), aby wyciagnac tekst z pola edycji uzyj funkcji GetWindowText. Przyjmuje ona trzy parametry są to: hWnd -> tutaj (w Twoim przypadku) uchwyt do kontrolki pola edycji, lpString -> wskaznik do bufora, w ktorym bedzie znajdowal sie tekst z kontrolki, i trzeci parametr to nMaxCount -> liczba znakow jaka chcesz wyciagnac z kontrolki ( przypuszczam ze wartosc NULL sciaga caly tekst, choc nie jestem pewien na 100 %). Funkcja GetWindowText zwraca dlugosc stringu. Postaram sie poszukac wiecej informacji, jezeli cos znajde na pewno o tym napisze. W razie problemow z powyzszym opisem wal smialo. :) Pozdrawiam
  21. Phoenix

    Text

    Podam Ci przyklad pod Visuala nie wiem czy zadziala u Ciebie choc mysle ze nie powinno byc problemow :) Ja uzwyam dwoch funkcji TextOut i wsprintf Dla przykladu mamy zmienna liczba=5 TextOut(hdc, x, y, buffer, wsprintf(buffer, "Liczba %i", liczba); hdc - kontekst urzadzenia x,y - wspolrzedne tekstu buffer - tablica char ktora przechowa nasz tekst wsprintf - chyba nie trzeba opisywac dodam ze zwraca dlugosc naszego tekstu, a caly tekst zapisywany jest do zmiennej buffer Mam nadzieje ze oto chodzilo, a jak nie to probowalem :) Pozdrawiam
  22. Phoenix

    Ksiązka

    Link do wydawcy https://www.rm.com.pl Najlepje jak wpiszesz w wyszukiwarce "programowanie windows" bo mialem troszke problemow z odnalezeniem tej pozycji Pozdrawiam
  23. Phoenix

    Ksiązka

    A jaka ksiazke polecasz pozniej, ktora omawia dokladniej i bardziej zaawansowane API ?
  24. Phoenix

    .net

    A moze taka ankiete warto zamiesci na stronie glownej ? Wtedy moze wiecej ludzi na nia zaglosuje niestety nie kazdy wchodzi na forum Pozdrawiam
  25. Phoenix

    Ksiązka

    Do API zdecydowanie polecam ksiazke Charles'a Petzolda "Programowanie Windows" jak na razie mam ja pare dni jednak ksiazka jest pisana przystepnie ( oczywiscie znajomosc podstaw c++, wskazniki itp). Ksiazka ma rowniez bardzo bogate komentarze przy kodach zrodlowych ( dla mnie wielki plus ). Niestety cena jest dosc przytlaczajaca ponad 120 zl moze zabolec.
×
×
  • Utwórz nowe...