Fan, messagebeep și playsound - proceduri de redare a sunetelor - constructor de internet c tutorial

Procedura cea mai simplă care controlează sunetul este procedura Veer. Nu are parametri și redă semnalul audio standard setat în Windows. dacă computerul are o placă de sunet și semnalul standard este setat (este instalat în programul "Panou de control" Windows după ce faceți clic pe pictograma Sunet). Dacă nu există placă de sunet sau semnalul standard nu este setat, sunetul este redat prin difuzorul computerului doar ca un scurt-clic.







Deschideți o nouă aplicație, mutați-o pe buton, în manerul de clic scrieți un cuvânt:

Puteți să porniți aplicația, faceți clic pe buton și ascultați sunetul Windows standard sau faceți doar clic dacă sunetul standard nu este instalat.

O procedură mai gravă este funcția MessageBeep API Windows:

bool MessageBeep (int uType);

Parametrul uType specifică sunetul jucat ca identificator al secțiunii [sunete] din registru, în care sunt înregistrate sunetele care însoțesc anumite evenimente din Windows. Cu aplicația Sunet din panoul de control, utilizatorul poate șterge sau seta sunetele corespunzătoare.

Parametrul uType poate avea următoarele valori:

După solicitarea sunetului, funcția MessageBeep returnează controlul funcției apelate și redă sunetul în mod asincron. În timpul redării, aplicația poate continua să funcționeze.







Dacă nu este posibilă reproducerea sunetului specificat în funcție, se face o încercare de a reproduce implicit sunetul implicit al sistemului. Dacă acest lucru nu este posibil, semnalul standard este reprodus prin difuzor.

La executarea cu succes, se întoarce o valoare diferită de zero. Dacă nu reușește anormal, zero este returnat. Puteți introduce un alt buton în aplicația dvs. de testare și puteți scrie un handler pentru aceasta:

Veți auzi același sunet Windows standard. ca și în desfășurarea procedurii Veer. Sau nu auziți același clic silențios dacă sunetul standard nu este setat. Încercați să setați sunete diferite folosind "Panoul de control" și verificați MessageBeep pentru diferite valori ale parametrului său.

Și acum să luăm în considerare funcția PlaySound mai gravă. care vă permite să redați nu numai sunetele evenimentelor Windows. dar, de asemenea, orice fișiere val. Aceasta este o funcție a API-ului Windows. ale căror parametri sunt descriși în modulul mmsystem. Prin urmare, pentru a utiliza această funcție în aplicația dvs., trebuie să includeți directiva #include . deoarece C ++ Builder nu o include în mod automat.

Funcția PlaySound este definită după cum urmează:

bool PlaySound (char * pszSound, HINST hmod, Int fdwSound);

Parametrul pszSound este un șir cu un caracter nul la sfârșit și specifică sunetul care urmează să fie redat. Parametrul hmod este utilizat dacă sunetul este preluat din resursă. Și din moment ce nu vom folosi sunetul din resursă mai târziu, hmod poate fi întotdeauna setat la 0.

Parametrul fdwSound este setul de steaguri care definesc modul de redare și tipul de sursă de sunet. Următoarele sunt cele mai importante valori pentru redarea fișierelor de undă arbitrare:







Trimiteți-le prietenilor: