错误报告:
unit1.pas(184):variable'a' might not have been initialized
(250):constant expression expected
(294):constant expression expected
(296):statement expected,but expression of type 'integer'found
(297):':'expected but 'begin'found
(298):undeclared identifier:'panel1'
(299):undeclared identifier:'edit1'
(299):missing operator or semicolon
(299):statement expected,but expression of type 'string'found
(300):undeclared identifier:'mediaplayer1'
(302):undeclared identifier:'devicetype'
(303):'('expected but ':' found
(305):'('expected but ':' found
(306):text after final 'end.'-ignored by compiler
(63):unsatisfied forward or external declaration:'tform1.formdestroy'
project1.dpr(5):could not compile used unit 'unit1.pas'
代码:
unit Unit1; interface uses
MMsystem,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, AxCtrls, OleCtrls, VCF1, StdCtrls, Buttons, MPlayer, ExtCtrls,
Tabs;
const IsAvi=0;
IsWav=1;
IsMidi=2;
IsOthers=3;
IsCD=4;
type
TMSFRec=Record
Tracks:Byte;
Minutes:Byte;
Seconds:Byte;
Frames:Byte;
end;
TForm1 = class(TForm)
TabSet1: TTabSet;
Panel1: TPanel;
MediaPlayer1: TMediaPlayer;
Label1: TLabel;
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Timer1: TTimer;
OpenDialog1: TOpenDialog;
Label2: TLabel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton;
SpeedButton11: TSpeedButton;
SpeedButton12: TSpeedButton;
SpeedButton13: TSpeedButton;
SpeedButton14: TSpeedButton;
SpeedButton15: TSpeedButton;
SpeedButton16: TSpeedButton;
SpeedButton17: TSpeedButton;
SpeedButton18: TSpeedButton;
SpeedButton19: TSpeedButton;
SpeedButton20: TSpeedButton;
SpeedButton21: TSpeedButton;
SpeedButton22: TSpeedButton;
SpeedButton23: TSpeedButton;
SpeedButton24: TSpeedButton;
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure TabSet1Change(Sender: TObject; NewTab: Integer;
var AllowChange: Boolean);
procedure FormDestroy(Sender: TObject); private
{ Private declarations }
public
{ Public declarations }
CDTracksArray:array[1..24] of TSpeedButton;
CDPosition:Longint;
procedure InitCDTracksArrayData;
end; var
Form1: TForm1; implementation {$R *.dfm}
procedure TForm1.InitCDTracksArrayData;
var
i:integer;
begin
CDTracksArray[1]:=SpeedButton1;
CDTracksArray[2]:=SpeedButton2;
CDTracksArray[3]:=SpeedButton3;
CDTracksArray[4]:=SpeedButton4;
CDTracksArray[5]:=SpeedButton5;
CDTracksArray[6]:=SpeedButton6;
CDTracksArray[7]:=SpeedButton7;
CDTracksArray[8]:=SpeedButton8;
CDTracksArray[9]:=SpeedButton9;
CDTracksArray[10]:=SpeedButton10;
CDTracksArray[11]:=SpeedButton11;
CDTracksArray[12]:=SpeedButton12;
CDTracksArray[13]:=SpeedButton13;
CDTracksArray[14]:=SpeedButton14;
CDTracksArray[15]:=SpeedButton15;
CDTracksArray[16]:=SpeedButton16;
CDTracksArray[17]:=SpeedButton17;
CDTracksArray[18]:=SpeedButton18;
CDTracksArray[19]:=SpeedButton19;
CDTracksArray[20]:=SpeedButton20;
CDTracksArray[21]:=SpeedButton21;
CDTracksArray[22]:=SpeedButton22;
CDTracksArray[23]:=SpeedButton23;
CDTracksArray[24]:=SpeedButton24;
for i:=1 to 24 do
begin
CDTracksArray[i].visible:=false;
end;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
if mediaplayer1.mode=mpplaying then
mediaplayer1.Close;
close;
end; procedure TForm1.FormCreate(Sender: TObject);
begin
InitCDTracksArrayData;
opendialog1.Filter:=
'AVI(*.avi)|*.avi|Wwave(*.wave)|*.wave|MIDI(*.mid)|*.mid|Other(*.*)|*.*';
end; procedure TForm1.Timer1Timer(Sender: TObject);
begin
case TabSet1.TabIndex of
IsCD:
begin
if MediaPlayer1.tag <>-1 then
begin
CDPosition:=MediaPlayer1.Position;
with TMSFRec(CDPosition)do
begin
Panel1.Caption:='曲目:'+IntToStr(Tracks)+',时间: '+IntToStr(Minutes)+':'+IntToStr(Seconds);
end;
end;
end;
IsWav,IsMidi,IsAvi,IsOthers:
begin
end;
end;
end; procedure TForm1.SpeedButton1Click(Sender: TObject);
var
i:integer;
a:integer;
notcdflag:boolean;
begin
for i:=1 to MediaPlayer1.Tracks do
if (Sender as TSpeedButton)=CDTracksArray[i] then
a:=i;
Panel1.Caption:='请稍等';
Edit1.Text:='播放CD音乐';
MediaPlayer1.DeviceType:=dtCDAudio;
MediaPlayer1.FileName:='';
notcdflag:=false;
try
MediaPlayer1.Open;
MediaPlayer1.next;
MediaPlayer1.rewind;
except
notcdflag:=true;
end;
if notcdflag then
begin
MediaPlayer1.EnabledButtons:=[];
Edit1.Text:='请装上CD盘片';
ShowMEssage('不能打开CD,请装上CD盘片');
end
else
begin
MediaPlayer1.EnabledButtons:=[btPause,btStop,btNext,btPrev,btEject];
MediaPlayer1.TimeFormat:=tfTMSF;
with TMSFRec(cdposition)do
begin
Tracks:=a;
Minutes:=0;
Seconds:=1;
end;
MediaPlayer1.Position:=CDPosition;
MediaPlayer1.Play;
if mediaplayer1.mode <>mpPlaying then
begin
MediaPlayer1.Tag:=-1;
Panel1.Caption:='没有音乐可以播放';
for i:=1 to 24 do
CDTracksArray[i].Visible:=false;
end
else
begin
label2.Visible:=true;
mediaplayer1.Tag:=0;
bitbtn2.Enabled:=false;
for i:=1 to mediaplayer1.Tracks do
cdtracksarray[i].visible:=true;
end;
end;
end; procedure TForm1.BitBtn1Click(Sender: TObject);
var
cdloadflag:boolean;
begin
case tabset1.TabIndex of
iscd:
begin
cdloadflag:=true;
TabSet1change(sender,tabset1.TabIndex,cdloadflag);
end;
isavi,iswav,ismidi,isothers:
begin
opendialog1.FilterIndex:=tabset1.TabIndex+1;
if opendialog1.Execute then
begin
with mediaplayer1 do
begin
filename:=opendialog1.filename;
edit1.text:=extractfilename(opendialog1.filename);
autoenable:=true;
open;
displayrect:=rect(2,2,0,0);
panel1.Caption:='请播放';
end;
end;
end;
end;
end;
procedure TForm1.TabSet1Change(Sender: TObject; NewTab: Integer;
var AllowChange: Boolean);
var
i:integer;
notcdflag:boolean;
begin
mediaplayer1.Tag:=0;
if mediaplayer1.mode=mpplaying then
mediaplayer1.close;
mediaplayer1.enabledbuttons:=[];
bitbtn1.Enabled:=true;
case NewTab of
IsCD:
Panel1.caption:='请稍等';
edit1.text:='播放CD音乐';
mediaplayer1.devicetype:=dtcdaudio;
mediaplayer1.filename:='';
notcdflag:=false;
try
mediaplayer1.open;
mediaplayer1.next;
mediaplayer1.rewind;
except
notcdflag:=true;
end;
if notcdflag then
begin
mediaplayer1.enabledbuttons:=[];
edit1.text:='请装上CD盘片';
showmessage('不能打开CD,请装上CD盘片');
end
else
begin
mediaplayer1.enabledbuttons:=[btPause,btStop,btNext,btPrev,btEject];
mediaplayer1.timeformat:=tfTMSF;
with TMSFRec(CDPosition)do
begin
Tracks:=1;
Minutes:=0;
Seconds:=1;
end;
MediaPlayer1.Position:=CDPosition;
MediaPlayer1.play;
if MediaPlayer1.mode <>mpPlaying then
begin
MediaPlayer1.tag:=-1;
Panel1.caption:='没有音乐可以播放';
for i:=1 to 24 do
CDTracksArray[i].visible:=false;
end
else
begin
label2.visible:=true;
MediaPlayer1.tag:=0;
bitbtn2.enabled:=false;
for i:=1 to MediaPlayer1.Tracks do
cdtracksarray[i].visible:=true;
end;
end;
end;
IsAvi,IsWav,IsMidi,IsOthers:
begin
Panel1.caption:='播放区';
Edit1.text:='请打开文件';
with MediaPlayer1 do
begin
DeviceType:=dtAutoSelect;
Close;
end;
end;
end;
end; procedure TForm1.FormDestroy(Sender: TObject);
begin
MediaPlayer1.Close;
end; end.
unit1.pas(184):variable'a' might not have been initialized
(250):constant expression expected
(294):constant expression expected
(296):statement expected,but expression of type 'integer'found
(297):':'expected but 'begin'found
(298):undeclared identifier:'panel1'
(299):undeclared identifier:'edit1'
(299):missing operator or semicolon
(299):statement expected,but expression of type 'string'found
(300):undeclared identifier:'mediaplayer1'
(302):undeclared identifier:'devicetype'
(303):'('expected but ':' found
(305):'('expected but ':' found
(306):text after final 'end.'-ignored by compiler
(63):unsatisfied forward or external declaration:'tform1.formdestroy'
project1.dpr(5):could not compile used unit 'unit1.pas'
代码:
unit Unit1; interface uses
MMsystem,Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, AxCtrls, OleCtrls, VCF1, StdCtrls, Buttons, MPlayer, ExtCtrls,
Tabs;
const IsAvi=0;
IsWav=1;
IsMidi=2;
IsOthers=3;
IsCD=4;
type
TMSFRec=Record
Tracks:Byte;
Minutes:Byte;
Seconds:Byte;
Frames:Byte;
end;
TForm1 = class(TForm)
TabSet1: TTabSet;
Panel1: TPanel;
MediaPlayer1: TMediaPlayer;
Label1: TLabel;
Edit1: TEdit;
BitBtn1: TBitBtn;
BitBtn2: TBitBtn;
Timer1: TTimer;
OpenDialog1: TOpenDialog;
Label2: TLabel;
SpeedButton1: TSpeedButton;
SpeedButton2: TSpeedButton;
SpeedButton3: TSpeedButton;
SpeedButton4: TSpeedButton;
SpeedButton5: TSpeedButton;
SpeedButton6: TSpeedButton;
SpeedButton7: TSpeedButton;
SpeedButton8: TSpeedButton;
SpeedButton9: TSpeedButton;
SpeedButton10: TSpeedButton;
SpeedButton11: TSpeedButton;
SpeedButton12: TSpeedButton;
SpeedButton13: TSpeedButton;
SpeedButton14: TSpeedButton;
SpeedButton15: TSpeedButton;
SpeedButton16: TSpeedButton;
SpeedButton17: TSpeedButton;
SpeedButton18: TSpeedButton;
SpeedButton19: TSpeedButton;
SpeedButton20: TSpeedButton;
SpeedButton21: TSpeedButton;
SpeedButton22: TSpeedButton;
SpeedButton23: TSpeedButton;
SpeedButton24: TSpeedButton;
procedure BitBtn2Click(Sender: TObject);
procedure FormCreate(Sender: TObject);
procedure Timer1Timer(Sender: TObject);
procedure SpeedButton1Click(Sender: TObject);
procedure BitBtn1Click(Sender: TObject);
procedure TabSet1Change(Sender: TObject; NewTab: Integer;
var AllowChange: Boolean);
procedure FormDestroy(Sender: TObject); private
{ Private declarations }
public
{ Public declarations }
CDTracksArray:array[1..24] of TSpeedButton;
CDPosition:Longint;
procedure InitCDTracksArrayData;
end; var
Form1: TForm1; implementation {$R *.dfm}
procedure TForm1.InitCDTracksArrayData;
var
i:integer;
begin
CDTracksArray[1]:=SpeedButton1;
CDTracksArray[2]:=SpeedButton2;
CDTracksArray[3]:=SpeedButton3;
CDTracksArray[4]:=SpeedButton4;
CDTracksArray[5]:=SpeedButton5;
CDTracksArray[6]:=SpeedButton6;
CDTracksArray[7]:=SpeedButton7;
CDTracksArray[8]:=SpeedButton8;
CDTracksArray[9]:=SpeedButton9;
CDTracksArray[10]:=SpeedButton10;
CDTracksArray[11]:=SpeedButton11;
CDTracksArray[12]:=SpeedButton12;
CDTracksArray[13]:=SpeedButton13;
CDTracksArray[14]:=SpeedButton14;
CDTracksArray[15]:=SpeedButton15;
CDTracksArray[16]:=SpeedButton16;
CDTracksArray[17]:=SpeedButton17;
CDTracksArray[18]:=SpeedButton18;
CDTracksArray[19]:=SpeedButton19;
CDTracksArray[20]:=SpeedButton20;
CDTracksArray[21]:=SpeedButton21;
CDTracksArray[22]:=SpeedButton22;
CDTracksArray[23]:=SpeedButton23;
CDTracksArray[24]:=SpeedButton24;
for i:=1 to 24 do
begin
CDTracksArray[i].visible:=false;
end;
end;
procedure TForm1.BitBtn2Click(Sender: TObject);
begin
if mediaplayer1.mode=mpplaying then
mediaplayer1.Close;
close;
end; procedure TForm1.FormCreate(Sender: TObject);
begin
InitCDTracksArrayData;
opendialog1.Filter:=
'AVI(*.avi)|*.avi|Wwave(*.wave)|*.wave|MIDI(*.mid)|*.mid|Other(*.*)|*.*';
end; procedure TForm1.Timer1Timer(Sender: TObject);
begin
case TabSet1.TabIndex of
IsCD:
begin
if MediaPlayer1.tag <>-1 then
begin
CDPosition:=MediaPlayer1.Position;
with TMSFRec(CDPosition)do
begin
Panel1.Caption:='曲目:'+IntToStr(Tracks)+',时间: '+IntToStr(Minutes)+':'+IntToStr(Seconds);
end;
end;
end;
IsWav,IsMidi,IsAvi,IsOthers:
begin
end;
end;
end; procedure TForm1.SpeedButton1Click(Sender: TObject);
var
i:integer;
a:integer;
notcdflag:boolean;
begin
for i:=1 to MediaPlayer1.Tracks do
if (Sender as TSpeedButton)=CDTracksArray[i] then
a:=i;
Panel1.Caption:='请稍等';
Edit1.Text:='播放CD音乐';
MediaPlayer1.DeviceType:=dtCDAudio;
MediaPlayer1.FileName:='';
notcdflag:=false;
try
MediaPlayer1.Open;
MediaPlayer1.next;
MediaPlayer1.rewind;
except
notcdflag:=true;
end;
if notcdflag then
begin
MediaPlayer1.EnabledButtons:=[];
Edit1.Text:='请装上CD盘片';
ShowMEssage('不能打开CD,请装上CD盘片');
end
else
begin
MediaPlayer1.EnabledButtons:=[btPause,btStop,btNext,btPrev,btEject];
MediaPlayer1.TimeFormat:=tfTMSF;
with TMSFRec(cdposition)do
begin
Tracks:=a;
Minutes:=0;
Seconds:=1;
end;
MediaPlayer1.Position:=CDPosition;
MediaPlayer1.Play;
if mediaplayer1.mode <>mpPlaying then
begin
MediaPlayer1.Tag:=-1;
Panel1.Caption:='没有音乐可以播放';
for i:=1 to 24 do
CDTracksArray[i].Visible:=false;
end
else
begin
label2.Visible:=true;
mediaplayer1.Tag:=0;
bitbtn2.Enabled:=false;
for i:=1 to mediaplayer1.Tracks do
cdtracksarray[i].visible:=true;
end;
end;
end; procedure TForm1.BitBtn1Click(Sender: TObject);
var
cdloadflag:boolean;
begin
case tabset1.TabIndex of
iscd:
begin
cdloadflag:=true;
TabSet1change(sender,tabset1.TabIndex,cdloadflag);
end;
isavi,iswav,ismidi,isothers:
begin
opendialog1.FilterIndex:=tabset1.TabIndex+1;
if opendialog1.Execute then
begin
with mediaplayer1 do
begin
filename:=opendialog1.filename;
edit1.text:=extractfilename(opendialog1.filename);
autoenable:=true;
open;
displayrect:=rect(2,2,0,0);
panel1.Caption:='请播放';
end;
end;
end;
end;
end;
procedure TForm1.TabSet1Change(Sender: TObject; NewTab: Integer;
var AllowChange: Boolean);
var
i:integer;
notcdflag:boolean;
begin
mediaplayer1.Tag:=0;
if mediaplayer1.mode=mpplaying then
mediaplayer1.close;
mediaplayer1.enabledbuttons:=[];
bitbtn1.Enabled:=true;
case NewTab of
IsCD:
Panel1.caption:='请稍等';
edit1.text:='播放CD音乐';
mediaplayer1.devicetype:=dtcdaudio;
mediaplayer1.filename:='';
notcdflag:=false;
try
mediaplayer1.open;
mediaplayer1.next;
mediaplayer1.rewind;
except
notcdflag:=true;
end;
if notcdflag then
begin
mediaplayer1.enabledbuttons:=[];
edit1.text:='请装上CD盘片';
showmessage('不能打开CD,请装上CD盘片');
end
else
begin
mediaplayer1.enabledbuttons:=[btPause,btStop,btNext,btPrev,btEject];
mediaplayer1.timeformat:=tfTMSF;
with TMSFRec(CDPosition)do
begin
Tracks:=1;
Minutes:=0;
Seconds:=1;
end;
MediaPlayer1.Position:=CDPosition;
MediaPlayer1.play;
if MediaPlayer1.mode <>mpPlaying then
begin
MediaPlayer1.tag:=-1;
Panel1.caption:='没有音乐可以播放';
for i:=1 to 24 do
CDTracksArray[i].visible:=false;
end
else
begin
label2.visible:=true;
MediaPlayer1.tag:=0;
bitbtn2.enabled:=false;
for i:=1 to MediaPlayer1.Tracks do
cdtracksarray[i].visible:=true;
end;
end;
end;
IsAvi,IsWav,IsMidi,IsOthers:
begin
Panel1.caption:='播放区';
Edit1.text:='请打开文件';
with MediaPlayer1 do
begin
DeviceType:=dtAutoSelect;
Close;
end;
end;
end;
end; procedure TForm1.FormDestroy(Sender: TObject);
begin
MediaPlayer1.Close;
end; end.
解决方案 »
- idhttp 发送文件已流方式发送快?
- 求助。。谢谢。。
- 请问怎样制作一个集成到word中的控件(一个按钮),点击按钮对word文档进行操作?
- 关于delphi的LOCATE定位的问题[悬赏50分]
- 公司准备上一套外贸管理系统,谁能帮我推荐一下!!!
- 关于自定义FILE类型变量操作!
- 怎么单独引用LISTBOX得到的一组数据中的某一项?
- 有一个N个学校的表,里面有各科科目分数,我要按学校对表中的>=60和>=85 的百分率!
- cobi(我是小新,我只有5岁),请进!高分赠送。
- 如何存取服务器端的文件?急!急!急!
- ===请教字符串分隔====
- 应用程序如何在退出时释放多个DLL的内存?在线等待!
(250):constant expression expected
(294):constant expression expected
(296):statement expected,but expression of type 'integer'found
(297):':'expected but 'begin'found
(298):undeclared identifier:'panel1' //未定义'panel1' ,估计是界面问题
(299):undeclared identifier:'edit1' //同上
(299):missing operator or semicolon
(299):statement expected,but expression of type 'string'found
(300):undeclared identifier:'mediaplayer1' 未定义
(302):undeclared identifier:'devicetype' 未定义
(303):'('expected but ':' found
(305):'('expected but ':' found
(306):text after final 'end.'-ignored by compiler
(63):unsatisfied forward or external declaration:'tform1.formdestroy'
project1.dpr(5):could not compile used unit 'unit1.pas' 其他应该都是代码问题,格式问题,或者修改一个地方后,就好了,不看了
(250):constant expression expected
(294):constant expression expected
(296):statement expected,but expression of type 'integer'found
(297):':'expected but 'begin'found //估计是少了一个end或者begin
(298):undeclared identifier:'panel1' //放一个panel上去,以后再根据情况来调整位置
(299):undeclared identifier:'edit1' //放一个panel上去,以后再根据情况来调整位置
(299):missing operator or semicolon //
(299):statement expected,but expression of type 'string'found
(300):undeclared identifier:'mediaplayer1' //没有引用mediaplayer吧
(302):undeclared identifier:'devicetype' //声明一个就是了
(303):'('expected but ':' found //
(305):'('expected but ':' found
(306):text after final 'end.'-ignored by compiler //前面有没有配对的begin或end
(63):unsatisfied forward or external declaration:'tform1.formdestroy' //前后声明不一致
project1.dpr(5):could not compile used unit 'unit1.pas'