Skocz do zawartości

DialogBox i zasoby


Nightowl

Recommended Posts

Pracuje w C++Builder6.
Mam cos takiego, jako definicję:
BOOL CALLBACK DlgProc(HWND hwnd, UINT Msg, WPARAM wParam, LPARAM lParam)
{....}
następnie używam funkcji:
DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG1), hwnd1, DlgProc);
Przy kompilacji wyświetla mi się error :
Cannot convert int(...) oraz Type mismatch in parametr lpDialogFunc(...).
Drugi mój problem ujawnia się podczas kompilacji zasobów.Jeżeli pisze:
#include<windows.h>, to wyświetla mi się błąd, że nie może otwożyć tej biblioteki. Kompiluje pod dosem poleceniem brcc32.
Z góry dziękuję za pomoc.

Link do komentarza
Udostępnij na innych stronach

Wpisałem : &, ale to nic nie dało. Podjeżewam, że jest problem z tym
wskaźnikiem, poniewż jak wipszę NULL zamiast DlgProc, to dialog pojawia się, tylko, że bez obsługi. I wogule jeżeli to ma być wskaźnik, to powinienem go pierwsze zdefiniować? Jest to okno modalne więc nie zmieniałem nic w pętli komunikatów.
Co do drugiego problemu to pisze okno dialogowe w pliku zasobów ("zasoby.rc") oraz dołanczam za pomocą dyrektywy #include
bibliotekę <windows.h> też w pliku zasoby.rc (tak jest we wszystkich lekcjach jakie mam). Podczas kompilacji pliku zasobów, pojawia mi się error: cannot open file: windows.h .

Link do komentarza
Udostępnij na innych stronach

Witaj

Coś mi się zdaje, że w twój problem tkwi teraz w tej funkcji okienkowej dla dialogbox'a. Może okienko zaraz się zamyka...ja programuje pod Devem i nie mam takiego problemu...dziwne że kompilator zwrócił ci błąd...nie musisz definiować czegoś jako wskaźnik, żeby przekazać to jako wskaźnik...dziwne przecież funkcja sama w sobie jest wskaźnikiem...ja przeważnie tę funkcję rzutuję na DLGPROC, albo wogle nic nie robię.
Co do drugiego problemu to naprawdę nie wiem jak to wygląda po BC++...jedno jest pewne linker nie może odnaleźć pliku nagłówkowego windows.h...może przekopiuj ten plik do folderu gdzie jest plik cpp i wpis "windows.h"...
Pozdrawiam.

Link do komentarza
Udostępnij na innych stronach

Zainstalowałem dev 3.8 i nie mam z tym problemu już. Wszystko chodzi jak należy. Nie wiem co jest nie tak z builderem. Ściągłem też dev 4.9, ale nie umiem go skonfigurować. Przy kompilowaniu w dev 4.9 wyskakują mi jakieś błędy odnośnie pliku crt.o. Nie wiem co to za plik. Za wszelkie wskazówki będę wdzięczny.

Link do komentarza
Udostępnij na innych stronach

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Gość
Odpowiedz...

×   Wkleiłeś zawartość bez formatowania.   Usuń formatowanie

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Utwórz nowe...