Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Promjena izgleda kursora

[es] :: C/C++ programiranje :: Promjena izgleda kursora

[ Pregleda: 3486 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

slavkot

Član broj: 18657
Poruke: 166
*.teol.net



Profil

icon Promjena izgleda kursora08.05.2004. u 11:10 - pre 242 meseci
Cao,kako mogu promjenuti izgled kursora u dialog boxu kada kliknem na dugme,
pokusao sam na sledeci nacin :

BOOL CALLBACK Procedura(HWND hwnd,UINT Msg,WPARAM wParam,LPARAM lParam)
{
switch(Msg) {
......
case WM_COMMAND :
switch(wParam)
{
case IDD_DUGME: //Znaci kad se pritisne dugme da promjeni kursor
SetCursor(LoadCursor(NULL,IDC_HAND));

break;
.........
ali nece da ga zadrzi,tj. ako ubacim gore i sleep(2000) , kursor u obliku ruke se pokaze te 2 sekunde,sto znaci da radi funkcija SetCursor ?
 
Odgovor na temu

blaza
n/a

Član broj: 961
Poruke: 743
*.vdial.verat.net



+3 Profil

icon Re: Promjena izgleda kursora08.05.2004. u 11:36 - pre 242 meseci
Ako hCursor polje u WNDCLASSEX strukturi koju ces registrovati i koristiti za prozor nije NULL, i ako naknadno promenis kurzor sa SetCursor, svaki put kada pomeris misa Windows ce vratiti onaj kursor koji je odredjen sa hCursor.
Stoga, stavi NULL u hCursor, i negde u inizijalizacionom delu koda, nakon kreiranja prozora aplikacije setuj pocetni kurzor sa SetCursor, a ostalo ostavi kako si uradio.
O_o
 
Odgovor na temu

slavkot

Član broj: 18657
Poruke: 166
*.teol.net



Profil

icon Re: Promjena izgleda kursora08.05.2004. u 11:56 - pre 242 meseci
Ali nemam ja WNDCLASSEX strukturu , jer imam samo dialog box

#include <windows.h>
#include "resource.h"


BOOL CALLBACK Procedura(HWND hwnd,UINT Msg,WPARAM wParam,LPARAM lParam)
{
switch(Msg)
{

case WM_INITDIALOG:
///Jedino da ga ovdje inicijalizujam;
break;

case WM_COMMAND:
switch(wParam)
{
case IDD_DUGME:
SetCursor(LoadCursor(NULL,IDC_HAND));
break;
}
break;

case WM_CLOSE:
PostQuitMessage(0);
break;

default:
return FALSE;
}
return 1;
}

int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance,
LPSTR lpCmdLine, int nCmdShow)
{
return DialogBox(hInstance, MAKEINTRESOURCE(IDD_DIALOG),NULL,Procedura);
}

Probao sam promjenuti kursor kada pravim obican windows(prozor) i radi , ali nece ako je dialog box.
 
Odgovor na temu

blaza
n/a

Član broj: 961
Poruke: 743
*.vdial.verat.net



+3 Profil

icon Re: Promjena izgleda kursora08.05.2004. u 12:18 - pre 242 meseci
Probaj sa :
Code:

case IDD_DUGME:
SetClassLong(hwnd, GCL_HCURSOR, (long)LoadCursor(NULL, IDC_HAND));
break;


Ovo bi trebalo da promeni default kurzor za dijalog, ali ne i za kontrole na dijalogu, kao npr. za IDD_DUGME, ali uvek mozes naci handle svake kontrole i izvrsiti izmenu na gore opisani nacin.
O_o
 
Odgovor na temu

slavkot

Član broj: 18657
Poruke: 166
*.teol.net



Profil

icon Re: Promjena izgleda kursora08.05.2004. u 12:28 - pre 242 meseci
Svaka cast blaza , radi , hvala.
 
Odgovor na temu

[es] :: C/C++ programiranje :: Promjena izgleda kursora

[ Pregleda: 3486 | Odgovora: 4 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.