lập trình viên tương lai

Thảo luận trong 'Lập trình & Đồ hoạ' bắt đầu bởi the_sith_a2, 27/6/06.

Trạng thái chủ đề:
Không mở trả lời sau này.
  1. Hyutars

    Hyutars Mario & Luigi

    Tham gia ngày:
    26/11/05
    Bài viết:
    713
    Nơi ở:
    Ragnarok World
    Cho mình hỏi típ: khi mình học lập trình trong win, có viết chương trình sau:
    Đây là file cpp:
    #include <windows.h>
    #include <sysmets.h>

    LRESULT CALLBACK WndProc (HWND, UINT, WPARAM, LPARAM);

    int WINAPI WinMain (HINSTANCE hInstance, HINSTANCE hPrevInstance, PSTR szCmdLine, int iCmdShow)
    {
    static TCHAR szAppName[] = TEXT ("SysMets1");
    HWND hwnd;
    MSG msg;
    WNDCLASS wndclass;

    wndclass.cbClsExtra = 0;
    wndclass.cbWndExtra = 0;
    wndclass.hbrBackground = (HBRUSH) GetStockObject (WHITE_BRUSH);
    wndclass.hCursor = LoadCursor (NULL, IDC_APPLICATION);
    wndclass.hIcon = LoadIcon (NULL, IDI_APPLICATION);
    wndclass.hInstance = hInstance;
    wndclass.lpfnWndProc = WndProc;
    wndclass.lpszClassName = szAppName;
    wndclass.lpszMenuName = NULL;
    wndclass.style = CS_HREDRAW | CS_VREDRAW;

    if (!RegisterClass (&wndclass))
    {
    MessageBox (NULL, TEXT ("Chuong trinh nay yeu cau Windows NT!"), szAppName, MB_ICONERROR);
    return 0;
    }

    hwnd = CreateWindow (szAppName, TEXT ("Get System Merics No.1"), WS_OVERLAPPEDWINDOW,
    CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, CW_USEDEFAULT, NULL, NULL, hInstance, NULL);

    ShowWindow (hwnd, iCmdShow);
    UpdateWindow (hwnd);
    while (GetMessage (&msg, NULL, 0, 0))
    {
    TranslateMessage (&msg);
    DispatchMessage (&msg);
    }
    return msg.wParam;
    }

    LRESULT CALLBACK WndProc (HWND hwnd, UINT message, WPARAM wParam, LPARAM lParam)
    {
    static int cxChar, cxCaps, cyChar;
    HDC hdc;
    int i;
    PAINTSTRUCT ps;
    TCHAR szBuffer [10];
    TEXTMETRIC tm;

    switch (message)
    {
    case WM_CREATE:
    {
    hdc = GetDC(hwnd);

    GetTextMetrics (hdc, &tm);
    cxChar = tm.tmAveCharWidth;
    cxCaps = (tm.tmPitchAndFamily & 1 ? 3 : 2) * cxChar / 2;
    cyChar = tm.tmHeight + tm.tmExternalLeading;

    ReleaseDC (hwnd, hdc);
    return 0;
    }
    case WM_PAINT:
    {
    hdc = BeginPaint (hwnd, &ps);

    for (i = 0; i<NUMLINES; i++)
    {
    TextOut (hdc, 0, cyChar * i, sysmetrics.szLabel, lstrlen (sysmetrics.szLabel));
    TextOut (hdc, 22 * cxCaps, cyChar * i, sysmetrics.szDesc, lstrlen (sysmetrics.szDesc));
    SetTextAlign (hdc, TA_RIGHT | TA_TOP);
    TextOut (hdc, 22 * cxCaps + 40 * cxChar, cyChar * i, szBuffer, wsprintf (szBuffer, TEXT ("%5d"), GetSystemMetrics (sysmetrics.iIndex)));
    SetTextAlign (hdc, TA_LEFT | TA_TOP);
    }
    EndPaint (hwnd, &ps);
    return 0;
    }
    case WM_DESTROY:
    {
    PostQuitMessage(0);
    return 0;
    }
    }
    return DefWindowProc (hwnd, message, wParam, lParam);
    }


    Và đây là file header sysmets.h (mình chọn new->header file)

    #define NUMLINES ((int) (sizeof sysmetrics / sizeof sysmetrics [0]))

    struct
    {
    int iIndex;
    TCHAR * szLabel;
    TCHAR * szDesc;
    }
    sysmetrics [] =
    {
    SM_CXSCREEN, TEXT ("SM_CXSCREEN"),TEXT("Screen width in pixels")
    };


    Nhưng khi chạy thử nó báo lỗi:
    cannot open include file sysmets.h
    bạn nào giúp mình với, thx
     
  2. magic_boy_1989

    magic_boy_1989 Youtube Master Race

    Tham gia ngày:
    6/7/06
    Bài viết:
    6
    bạn không nói rõ b¹n chuyên ve lãnh v­ực nào ,sao mà có the đóng góp ý kiến được ch­ứ.
     
  3. Nguyen_Kain

    Nguyen_Kain Quậy hết mình Moderator

    Tham gia ngày:
    28/5/04
    Bài viết:
    1,299
    Bạn có chắc chắn thư viện sysmets.h là tồn tại không , mình mới học ngôn ngữ C bậc thấp nên chưa xài đến thư viện sysmets.h (có chắc là có ko vậy ?)
     
  4. ZeroCrazy

    ZeroCrazy T.E.T.Я.I.S

    Tham gia ngày:
    8/4/06
    Bài viết:
    516
    Nơi ở:
    hỏi làm chi ?
    Bạn phải sử dụng tài liệu đúng với phiên bản C++ đang sài. Tốt nhất là tìm trong mdsn. Ặc... bây giờ nhìn mã C sao chóng mặt quá :whew:
     
  5. Hyutars

    Hyutars Mario & Luigi

    Tham gia ngày:
    26/11/05
    Bài viết:
    713
    Nơi ở:
    Ragnarok World
    file sysmets.h là do mình tự tạo (header file đó), hồi trước mình từng làm thử cách này thì được mà(file ->new->header file), tài liệu mình đang xài là c++ 6.0
     
  6. bullno1

    bullno1 Mr & Ms Pac-Man

    Tham gia ngày:
    22/4/06
    Bài viết:
    221
    Bạn chỉnh đường dẫn include về thư mục có file đó chưa?
     
  7. Hyutars

    Hyutars Mario & Luigi

    Tham gia ngày:
    26/11/05
    Bài viết:
    713
    Nơi ở:
    Ragnarok World
    bạn có thể nói rõ hơn không? mình chỉ add file header đó vào header file trong workspace đó thôi,cảm ơn trước nha
     
  8. Nguyen_Kain

    Nguyen_Kain Quậy hết mình Moderator

    Tham gia ngày:
    28/5/04
    Bài viết:
    1,299
    Ý , mình chưa học C++ , đang nghiên cứu C thôi , lõi này của bác thì phải xem là cái cách tạo header file đã đúng chưa ? Vì lỗi này do cách tạo của bác thôi , mình chưa tạo bao giờ nên ko biết!
     
  9. Ice Dragon

    Ice Dragon Mega Man

    Tham gia ngày:
    6/9/04
    Bài viết:
    3,101
    Nơi ở:
    none
    Hic, trong VB .NET tui cho khởi động chương trình từ hàm main mà nó cứ tự thoát hoài, ai help với
    Ice cũng gặp chút vấn đề khi chuyển đổi giữa các form nữa T_T
     
  10. jackyphuong88

    jackyphuong88 Mario & Luigi

    Tham gia ngày:
    25/4/06
    Bài viết:
    728
    Mấy bác pro ơi. Ai có tài liệu hay ebook về php tiếng việt ko cho em xin đi. Đang nghiên cứu về php nhưng ngặt nỗi có ebook tiếng Anh ko đọc ko hiểu hết ý::( ::( . muốn học php tiếng việt xong rùi sẽ sang tiếng Anh. Cái cuối mình thực hành php ở đâu là thích hợp nhất với noob như em? học mà ko hành là 3 bữa quên bét hết:D :p :'>
     
  11. bullno1

    bullno1 Mr & Ms Pac-Man

    Tham gia ngày:
    22/4/06
    Bài viết:
    221
    Học tiếng Anh trước là tốt nhất,mấy cái máy tính mà đọc tiếng Việt mới ko hiểu.Cách thực hành tốt nhất là kiếm một cái host hỗ trợ PHP,miễn phí,ko quảng cáo,có SQL,có thể có thêm gì cũng đc,làm admin luôn :)) :)) người ta gọi nó là localhost =)) .Bạn cài webserver,php,sql server vào luôn máy mình mà nghịch cho dễ. Khi nào tốt hãy kiếm host trên mạng mà "khoe hàng".
     
  12. jackyphuong88

    jackyphuong88 Mario & Luigi

    Tham gia ngày:
    25/4/06
    Bài viết:
    728
    Cho link webserver,php,sql server dow được ko gà lắm::( ::( .ko cho chắc mất cả ngày lục trên mấy forum tin học:D ;;) .
     
  13. ZeroCrazy

    ZeroCrazy T.E.T.Я.I.S

    Tham gia ngày:
    8/4/06
    Bài viết:
    516
    Nơi ở:
    hỏi làm chi ?
    Tui không học VB nhưng chắc là lỗi này:
    static void Main()
    {
    ....
    Form f = new Form();
    f.show();
    ...
    }
    Sau đó from tự tắt. Bạn phải thêm lệnh Application.Run( f ) để duy trì luồng của form.
    Bạn phải gởi code lên chứ nói khơi khơi vậy ai biết đường mà chỉ.
     
  14. Hyutars

    Hyutars Mario & Luigi

    Tham gia ngày:
    26/11/05
    Bài viết:
    713
    Nơi ở:
    Ragnarok World
    à, cái lỗi của tui đã bít rồi,chỉ cần copy cái header vào folder include trong folder VC 98 :), cảm ơn mọi người đã đóng góp
     
  15. LeoNeo

    LeoNeo Mr & Ms Pac-Man

    Tham gia ngày:
    3/7/06
    Bài viết:
    159
    Nơi ở:
    Tương Lai
    bác theo học 1 khóa lập trình trong trừơng CNTT gần nhất phụ đạo cũng đc là dư sức :D
     
  16. Nguyen_Kain

    Nguyen_Kain Quậy hết mình Moderator

    Tham gia ngày:
    28/5/04
    Bài viết:
    1,299
    Không sao , có nhiều chương trình trọn gói , khi cài sẽ tự đọng cài và config những cái thứ trên , mình biết một chương trình , hiện tại mình vẫn dùng và hoạt động rất tốt đó là xxamp , không biết có ai biết không ? :hug:
     
  17. Duong_de

    Duong_de Dragon Quest

    Tham gia ngày:
    14/2/05
    Bài viết:
    1,214
    Nơi ở:
    Hải Phòng
    Đã là lập trình viên thì đương nhiên là phải giỏi ngôn ngữ máy tính , ko đc sơ suất , tuy nhiên tui thấy bạn ngay cả ngôn ngữ mẹ đẻ còn chưa nên hồn thì làm ăn quái gì đây ? " Trở thành " chứ ko phải " chở thành " :))=)) , đọc lại bài của mình đi :))
     
  18. Nguyen_Kain

    Nguyen_Kain Quậy hết mình Moderator

    Tham gia ngày:
    28/5/04
    Bài viết:
    1,299
    Bác bị chém mấy nhát vẫn chưa dủ hay sao mà qua đây spam vậy ? Không sợ lập lại nick lần nữa à :D

    Tui nghĩ chủ đề này đã kiệt vốn , chúng ta nên kêu MOD đóng cửa topic cái nhẩy (dạo này MOD chả on gì cả , có kêu cũng chẳng ai nghe)
     
  19. Constant

    Constant Mario & Luigi

    Tham gia ngày:
    2/7/03
    Bài viết:
    861
    Nơi ở:
    Sydney - Australia
    __ Sao lại nói vậy mod online hoài đấy thôi ! Chỉ tại để invisible nên các bạn khó thấy mà thui. Chứ nhiệm vụ check box thì vẫn làm bình thường đấy ^^
     
Trạng thái chủ đề:
Không mở trả lời sau này.

Chia sẻ trang này