Postagens

Capturar áudio da placa de som com Delphi

Imagem
Adicione a sessão uses   MMSystem Código para iniciar gravação do áudio: mciSendString('OPEN NEW TYPE WAVEAUDIO ALIAS mysound', nil, 0, Handle);   mciSendString('SET mysound TIME FORMAT MS ' +     'BITSPERSAMPLE 32 ' +     'CHANNELS 20 ' +     'SAMPLESPERSEC 250 ' +     'BYTESPERSEC 180000',     nil, 0, Handle);   mciSendString('RECORD mysound', nil, 0, Handle); Código para parar gravação: mciSendString('STOP mysound', nil, 0, Handle); Código para salvar o som wav: var   arquivo: String; begin   GetDir(0, arquivo);   mciSendString(PChar('SAVE mysound ' + arquivo + '/test.wav'), nil, 0, Handle);   mciSendString('CLOSE mysound', nil, 0, Handle); // no exemplo acima o som é salvo no mesmo diretório do executável.

dbGrid zebrado (Delphi)

Quando utilizamos dbGrid e este recebe muitos registros fica dificil ler toda a linha, principalmente se possuimos um grande número de colunas, um recurso que podemos lançar mão para ao menos amenizar essa situação é o efeito "zebrado", onde temos linhas com cores diferentes, na verdade duas cores diferentes que se intercalam. Então vamos ao exemplo, no evento OnDrawColumnCell: if odd (ClientDataSet4.RecNo) then DBGrid1.Canvas.Brush.Color:= clmenubar else DBGrid1.Canvas.Brush.Color:= clCream; TDbGrid(Sender).Canvas.font.Color:= clBlack; if gdSelected in State then with (Sender as TDBGrid).Canvas do begin Brush.Color := clmoneygreen; FillRect(Rect); Font.Style := [fsbold] end; TDbGrid(Sender).DefaultDrawDataCell(Rect, TDbGrid(Sender).columns[datacol].field, State);