Skocz do zawartości

Jarema

Członkowie
  • Postów

    0
  • Dołączył

  • Ostatnio

    Nigdy

Wszystko napisane przez Jarema

  1. Podczas przeszukiwania MSDN cos takiego mi sie obilo, moze uzycie tej funkcji cos pomoze: SetFileApisToANSI();
  2. Dzieje sie tak poniewaz tam panuje stary system okreslania sciezek w ktorych nazwa katalogu nie moze byc dluzsza niz 8 znakow (pozostalosc po dosie). Ale mozesz spokojnie uzywac tej sciezki w programie bo sie pokapuje.
  3. Jarema

    Kilka prpblemów

    No coz nie wiem jak na Twoje pytanie odpowiedziec bo nigdy sie ta kontrolka nie zajmowalem, ale na 90% odpowie Ci na nie autor tutoriala o tym - codeguy. Wyslij mu PM albo zagadaj na GG.
  4. Jarema

    Kilka prpblemów

    Co do pierwszych 2 pytań to w porządku ponieważ Windows szuka dll-ow nie tylko u Ciebie w katalogu z programem. Szuka tutaj najpierw potem chyba w windows-ie potem w systemach i dlatego znalazl. Co do statusa to sproboj tak: InitCommonControls(); CreateStatusWindow(WS_CHILD | WS_VISIBLE, "", hParent, 0); Mnie to zawsze działało.
  5. Miałem to samo u siebie. Szczerze mówiąc to też chciałem w obiektach 100% ale nie udało mi się tego do klasy zamieścić centralnie. Ale poradziłem sobie w inny sposób. Zadeklarowałem tą funkcję jako funkcję zaprzyjaźnioną tej klasy (pamiętaj że to klasa deklaruje przyjaźń a nie funkcja), dzięki temu moja funkcja mogła operować na danych składowych mojej klasy. Pewnie będziesz wiedział o co chodzi. Jeśli uda Ci się to inaczej rozwiązać to daj znać bo sam jestem ciekawy.
  6. Jarema

    Mysql w C++

    bardzo latwo. Sciagnij sobie serwer MySQL i w nim masz caly kod zrodlowy. Musisz tam po katalogach znalezc plik mysql.h i dolaczyc go do programu, no i jeszcze w miejsce gdzie masz execa kopiujesz libmySQL.dll. Potem tylko odpalasz manuala ktory tez jest w katalogu z serwerem no i tam masz opis wszystkich API do MySQL-a no i zapytan oczywiscie. To chyba tyle.
  7. Jarema

    Kontrolka tab

    Bardzo Cie przepraszam ze nie czytam ale wycialem gotowy rozdzial z MSDN, przeczytaj to i na 100% Ci zadziala :) Creating a Tab Control The example in this section demonstrates how to create a tab control and display it in the client area of the application's main window. The application displays a third window (a static control) in the display area of the tab control. The parent window positions and sizes the tab control and static control when it processes theWM_SIZE message. There are seven tabs, one for each day of the week. When the user selects a tab, the application displays the name of the corresponding day in the static control. The following global variables are used in this example. // Global variables HINSTANCE g_hinst; // handle to application instance char g_achTemp[256]; // temporary buffer for strings HWND g_hwndMain; // main application window HWND g_hwndTab; // tab control HWND g_hwndDisplay; // handle to static control in // tab control's display area The following function creates the tab control and adds a tab for each day of the week. The names of the days are defined as string resources, consecutively numbered starting with IDS_FIRSTDAY (defined in the application's header file). Both the parent window and the tab control must have the WS_CLIPSIBLINGS window style. The application's initialization function calls this function after creating the main window. // DoCreateTabControl - creates a tab control, sized to fit the // specified parent window's client area, and adds some tabs. // Returns the handle to the tab control. // hwndParent - parent window (the application's main window). HWND WINAPI DoCreateTabControl(HWND hwndParent) { RECT rcClient; HWND hwndTab; TCITEM tie; int i; // Get the dimensions of the parent window's client area, and // create a tab control child window of that size. GetClientRect(hwndParent, &rcClient); InitCommonControls(); hwndTab = CreateWindow( WC_TABCONTROL, "", WS_CHILD | WS_CLIPSIBLINGS | WS_VISIBLE, 0, 0, rcClient.right, rcClient.bottom, hwndParent, NULL, g_hinst, NULL ); if (hwndTab == NULL) return NULL; // Add tabs for each day of the week. tie.mask = TCIF_TEXT | TCIF_IMAGE; tie.iImage = -1; tie.pszText = g_achTemp; for (i = 0; i < 7; i++) { LoadString(g_hinst, IDS_FIRSTDAY + i, g_achTemp, sizeof(g_achTemp)); if (TabCtrl_InsertItem(hwndTab, i, &tie) == -1) { DestroyWindow(hwndTab); return NULL; } } return hwndTab; } The following function creates the static control that occupies the tab control's display area. The application's initialization function calls this function after creating the main window and the tab control. // DoCreateDisplayWindow - creates a child window (a static // control) to occupy the tab control's display area. // Returns the handle to the static control. // hwndParent - parent window (the application's main window). HWND WINAPI DoCreateDisplayWindow(HWND hwndParent) { HWND hwndStatic = CreateWindow("STATIC", "", WS_CHILD | WS_VISIBLE | WS_BORDER, 0, 0, CW_USEDEFAULT, CW_USEDEFAULT, hwndParent, NULL, g_hinst, NULL); return hwndStatic; } Following are the relevant portions of the application's window procedure. The application processes theWM_SIZE message to position and size the tab control and the static control. To determine the appropriate position and size for the static control, this example sends the tab control a TCM_ADJUSTRECT message (by using the TabCtrl_AdjustRect macro). When a tab is selected, the tab control sends a WM_NOTIFY message, specifying the TCN_SELCHANGE notification message. The application processes this notification message by setting the text of the static control. // MainWindowProc - processes the message for the main window class. // The return value depends on the message. // hwnd - handle to the window. // uMsg - identifier for the message. // wParam - message-specific parameter. // lParam - message-specific parameter. LRESULT CALLBACK MainWindowProc( HWND hwnd, UINT uMsg, WPARAM wParam, LPARAM lParam ) { switch (uMsg) { case WM_SIZE: { HDWP hdwp; RECT rc; // Calculate the display rectangle, assuming the // tab control is the size of the client area. SetRect(&rc, 0, 0, LOWORD(lParam), HIWORD(lParam)); TabCtrl_AdjustRect(g_hwndTab, FALSE, &rc); // Size the tab control to fit the client area. hdwp = BeginDeferWindowPos(2); DeferWindowPos(hdwp, g_hwndTab, NULL, 0, 0, LOWORD(lParam), HIWORD(lParam), SWP_NOMOVE | SWP_NOZORDER ); // Position and size the static control to fit the // tab control's display area, and make sure the // static control is in front of the tab control. DeferWindowPos(hdwp, g_hwndDisplay, HWND_TOP, rc.left, rc.top, rc.right - rc.left, rc.bottom - rc.top, 0 ); EndDeferWindowPos(hdwp); } break; case WM_NOTIFY: switch (HIWORD(wParam)) { case 0: . . // menu command processing . case TCN_SELCHANGE: { int iPage = TabCtrl_GetCurSel(g_hwndTab); LoadString(g_hinst, IDS_FIRSTDAY + iPage, g_achTemp, sizeof(g_achTemp)); SendMessage(g_hwndDisplay, WM_SETTEXT, 0 (LPARAM) g_achTemp); } break; } break; . . // additional message processing . default: return DefWindowProc(hwnd, uMsg, wParam, lParam); } return 0; }
  8. Jarema

    Mierzenie transferu

    Jesli satysfakcjonuje Cie odpowiedz w .NET to masz na talerzu: tutaj
  9. Jarema

    Dll i zasoby

    Faktycznie masz prawo nie wiedziec o co chodzi bo pytajacy nie sprecyzowal, moze chodzic o to ze maja miec po prostu lune, ale zeby to zrobic wystarczy ten pliczek z xml dolaczyc (tutorial na winapi.org). Ale jemu chodzi raczej o takie menu jak sa standardowo np w Office XP.
  10. Jarema

    Zmienna jako tekst.

    Boze widzisz i nie grzmisz :!: :!: Znasz jakis jezyk programowania?? w poscie wyzej masz odpowiedz. char text[50]; int zmienna = 4324; wsprintf( text, "%i", zmienna ); TextOut ( hdc, 10, 20, text, 5 ); Ehh, no comment.
  11. Jarema

    Dll i zasoby

    Bardzo mi przyro ale menuXP musisz sam rysowac i jest do tego tylko jede styl OWNERDRAW!!! No a jesli nie wiesz jak to zrobic to wpisz na www.codeproject.com w wyszukiwarce "Menu XP" i znajdzie kilka przydatnych linkow gdzie jest przeprowadzony caly proces rysowania. Mozna to zrobic najnormalniej w dll-u bo o ile pamietam to ludzie to tak robili. A co do zasobow w dll to nie ma problemu tylko musisz potem dolaczyc dll do programu gdzie chcesz tego uzywac. Powodzenia i na przyszlosc zagladajce na www.codeproject.com
  12. Obawiam się że w takiej sytuacji zostaje Ci jedynie OWNERDRAW. Jednak nie mam pojęcia jak go zrobić w przypadku Property Sheet. Tylko troche pomyliłeś temat bo napisałeś w wyższej rozdzielczości a pytasz o kolory. Bo jeśli chcesz większą rozdzielczość to tylko i wyłącznie OWNERDRAW.
  13. Jarema

    DialogBox i zasoby

    DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), hwnd1, &DlgProc); Ostatni parametr to musi być wskaźnik do funkcji. Co do drugiego to dobrze gdybyś dał dokładny opis błędu.
  14. Jarema

    zaznaczanie tekstu

    Ale gdzie ma być to zaznacznie zrobione?? Mógłbyś trochę skonkretyzować pytanie?
  15. Jarema

    C#

    Hyh. Trudno powiedziec ze sie znam, ale prawie skonczylem nowego petzolda czytac (polecam). No i stwierdzam ze bardzo to wygodnie jest, ale bardzo pamieciozerne. Duzo lepiej zorganizowane niz MFC. Wszystko jest takie oczywiste i intuicyjne praktycznie mozna zaczac w tym pisac od razu. Nowy jezyk C# tez jest bardzo wygodny takie polaczenie Javy i C++, cale pisanie jest obiektowe i praktycznie wszytko wymusza obiekty. Super sa zrobione property w klasach tak ze nie mozna sie pomylic we wpisywaniu i wogole full ochrona. Kolejnym + jest brak niebezpiecznych (choc przeze mnie lubianych nawet) wskaznikow, nie ma takiego czegos jak delete, tam tylko sie tworzy. Nowe GDI+ tez jest fajne, nie ma zabawy z uchwytami np. No i coz moge wiecej powiedziec, dobre to jest ale niezbyt (tak jak MFC) nadaje sie do niestandardowych rzeczy. Ale nie ma tej walki z interfacem jak w przypadku API gdzie czasem polowe kodu programu to bylo GUI. No a tak wogole to radze poprostu sprobowac i samemu ocenic.
  16. He Petzold z Greboszem rzadza ale tylko na poczatku, jesli chodzi o niestandardowe rzeczy to nic nie wnosza ciekawego, a wrecz utrudniaja zycie mowiac ze czegos sie nie da zrobic hehe. A co do skryptu to podziwiam, bo ja jestem za leniwy na takie rzeczy i max na co mnie stac to robienie komentarzy ktore umozliwiaja mi ponowne zastosowanie rozwiazania.
  17. Jarema

    Okna w WinAPI

    Kazde osobne okienko musi miec swoja osobna procedure okna (tz. praktycznie moze byc jedna procedura dla wiecej niz 1 okna ale podejzewam ze nie o to Ci chodzi). Najbardziej polecałbym jednak stworzenie okna dialogowego, no i co najważniejsze przeczytanie tutoriala ze stronki. Czy to sprawia aż tak wielki problem?
  18. Jarema

    No właśnie

    Ja osobiscie nie polecam zmiennych globalnych bo robi sie syf z lekka w programie. Polecam stworzyc sobie obiekt danej klasy na poczatku zaraz po " main() { ", chyba ze bardzo zalezy Ci na tym by to bylo przed main-em, choc dziwi mnie to dlaczego? Moze napisz jesli mozesz w czym rzecz, to bedziemy mogli Ci poradzic.
  19. Huh smieszne to troche co ludzie pisza (aluzja do autora) :). Ale to normalne, tak normalne ze robi sie juz nudne. Chlopak dba o czystosc rasy c++ :D A co do allegro to jest to taka biblioteka graficzna, zawiera niestety tak znienawidzone prez ciebie funkcje circle, fillellipse itp. :(, ale nie przejmuj sie o ile wiem to wyszlo cos wlasnie z tej bilbioteki co odpali ci sie pod winde i linucha. Ale bardzo smuci mnie Twoja nieporadnosc, dlaczego nie wpiszesz w google.pl allegro, albo nie klikniesz na link, czy da sie to jakos prosciej zrobic? Tak da sie, mozna zawsze zapytac na forum bo najechanie myszka naswiecace literki jest zbyt duzym wysilkiem, ehh :(
  20. huh ja zrobilem ska, sam, no i ban ruszylem, dzialaja na wielu danych i sa dosc szybkie, jednak nie licze ze dostane za nie powyzej 40 bo testy sa napewno przerabane, natomiast ska i sam poszly dosc niezle, ale to moj pierwszy rok i dosc amator bylem :). Dozer jesli moglbys przeslij te kody od ban-a, sarevook@interia.pl
  21. A ja mam lepszy pomysl, jesli chcesz sie dowiedziec o watkach to skocz do empiku, bierz ksiazke w lape i czytaj, poczytasz co Cie tam interesuje odkladasz i wiedza i kasa twoja, ja tak robilem wiele razy (metoda sprawdzona :D ).
  22. A sproboj jakos te teksty odswiezyc, daj jakies SetForegroundWindow, albo ShowWindow, moze poprostu najpierw robisz statica i on zaslania ci napisy, co jest dziwne troche, no i jeszcze sprawdz czy czegos nie pomieszales z ta czcionka. A najlepiej jak pinolec mowi rzuc kodem bo tez niezbyt mam sie o co zaczepic.
  23. Jarema

    Procesor

    Znalazlem to na www.codeproject.com wpisz w szukaniu CPU usage i znajdzie na bank dzialajaca rzecz, z gotowym napisanym przykladem bo sprawdzalem, gdybys sobie nie mogl poradzic to daj napisz ze chcesz to Ci wysle na maila.
  24. Jarema

    okno potomne

    Możesz spróbować poprzez wyłączenie kontrolek pod oknem potomnym (EnableWindow( hKontrolki, FALSE ) );
  25. Jarema

    Static

    no coz static to jest poprostu static, niczego do niego nie ladujesz specjalnie, to jest poprostu ramka, dajesz sobie inne kontrolki i tyle.
×
×
  • Utwórz nowe...