Hola:
Intenté hacerlo con esta función pero no me funciona.
Código:
procedure Abriendo;
begin
Label_Mensaje.Caption := 'Abriendo...';
end;
Código completo:
Código:
unit Lector_bandeja;
interface
uses
Winapi.Windows, Winapi.Messages, System.SysUtils, System.Variants, System.Classes, Vcl.Graphics,
Vcl.Controls, Vcl.Forms, Vcl.Dialogs, Vcl.StdCtrls, Vcl.ExtCtrls, MMSystem;
// No olvidar añadir en uses MMSystem arriba.
procedure Abriendo;
begin
Label_Mensaje.Caption := 'Abriendo...';
end;
type
TForm1 = class(TForm)
RadioGroup_Bandeja: TRadioGroup;
Button_Abrir: TButton;
Button_Cerrar: TButton;
Label_Mensaje: TLabel;
procedure Button_AbrirClick(Sender: TObject);
procedure Button_CerrarClick(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure OpenCd(AOpen:Boolean);
const
DoPlay : array[Boolean] of string = ('Set cdaudio door closed wait',
'Set cdaudio door open wait');
var
MyError : LongInt;
MyErrorString : array[0..MAXERRORLENGTH - 1] of char;
begin
MyError := mciSendString(pChar(DoPlay[AOpen]), nil, 0, 0);
if MyError <> 0 then
begin
MciGetErrorString(MyError,MyErrorString,MAXERRORLENGTH - 1);
Showmessage(MyErrorString);
Exit;
end;
end;
procedure TForm1.Button_AbrirClick(Sender: TObject);
begin
//Abriendo;
OpenCd(TRUE);
Label_Mensaje.Caption := 'Abierto.';
end;
procedure TForm1.Button_CerrarClick(Sender: TObject);
begin
Label_Mensaje.Caption := 'Cerrando...';
OpenCd(FALSE);
Label_Mensaje.Caption := 'Cerrado.';
end;
end.
¿Se me escapa algo?
Saludos.
Edito:
Te acabo de leer. El método o forma que hiciste, no funciona. Ejecuta pero no funciona.
Código:
Label_Mensaje.Caption := 'Abriendo...';
Sleep(1000);
OpenCd(TRUE);
Label_Mensaje.Caption := 'Abierto.';
Lo quiero hacer porque a parte que no se abre al momento, tarda un tiempo, lo justo para verse abrir la bandeja. Lo mismo para cerrar.
Saludos.