Skocz do zawartości

Zmiana tla przycisku "BS_AUTORADIOBUTTON"


Recommended Posts

Napisano

Pisze graficzny kalkulator jako temat Pracy Licencjackiej. Kalkulator posiada wlasna oprawe graficzna i chcialbym by radiobutton nie zachowywal sie jako szare okno umieszczone na oknie kalkulatora. Chcialbym aby posiadal kolor transparent lecz nie wiem jak ustawic kombinuje we wszystkie strony i mam problem by w zgrabny sposob sobie z tym poradzic. Prosze o pomoc. ;)

Napisano

Witam
Nie na pisałeś z czym już kombinowałeś i jak tworzysz ten BUTTON. Nie sprawdziłem ale może spróbuj CreateWindowEx a w pierwszym parametrze podając WS_EX_TRANSPARENT (reszta parametrów jak CreateWindow). Nie wiem też co chcesz uzyskać czy chodzi o zwykłą zmianę koloru tła czy on musi być koniecznie przezroczysty np. po to aby nie przykrywał obrazka tła.
Pozdro

Napisano

Tak dokładnie chodzi o to aby nie zakrywac obrazka pod buttonem, chcialbym aby sam radiobutton pozostal bez zmian lacznie z tekstem a cala otoczka zeby byla niewidoczna czyli porostu przeswitywala obrazek spod niej. Probowalem wstawic obrazek jako tlo radiobuttona ale wkurzylem sie i wykasowalem bo zniknal tekst a bitmapki nie zobaczylem. Postanowilem wziac uchwyt radiobuttona i rysowac cos.Przy radiobuttonie nic nie bylo widac zas gdy radiobuttona zamienilem na zwykly przycisk to rysowanie dzialalo.
Postanowilem skorzystac z BS_OWNERDRAW niestety nie bylo widac waznego dla mnie elementu czyli samego przycisku, ale tego mozna bylo sie spodziewac gdyz za pomoca tego stylu sami tworzymy interface przycisku.

  • 1 month later...
Napisano

przechwytujesz komunikat (w oknie rodzica) WM_CTLCOLORBTN
hdcButton = (HDC) wParam;
hwndButton = (HWND) lParam;

i teraz robisz to na co masz ochotę SetBkMode, SetBkColor, SetTextColor, jeżeli chcesz ustawić "przezroczystość" to SetBkMode(hdc, TRANSPARENT);

pozdrawiam :)

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...