Fórum O que está errado nesse código fonte?? #364823
09/10/2008
0
Sou muito novato em programação pascal, e fazendo um programinha, estou com dificuldades.
Vejam só:
É um programa que avalia estabelecimentos,
o usuário entra com os seguintes valores:
Nome do local: ( edit 1 )
Prato Principal ( edit 2)
Preço ( edit 3 )
Nota do prato ( Spinedit1 ) ( 1 a 20 )
Categoria ( Combobox1 )
Há um botão CADASTRAR ( Button 1 )
isso é uma guia do page control.
em outra pagina do page control há um MEMO1, para exibir os valores e um botão para acionar os arquivos gravados.
Quando eu rodo, ele indica erro aqui ( em negrito )
-----------------------------------------------------------------------
unit ex;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Spin, ComCtrls;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit3: TEdit;
SpinEdit1: TSpinEdit;
ComboBox1: TComboBox;
Button1: TButton;
Memo1: TMemo;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type
TRestaurante = record
Nome : string[20];
Prato: string[10];
Preco: real;
Nota: integer;
Categoria: integer;
end;
var
Form1: TForm1;
Ficha: Trestaurante;
Arq: File of TRestaurante;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Ficha.Nome:=Edit1.text;
Ficha.Prato:=Edit2.text;
Ficha.Preco:=Strtofloat(edit3.text);
Ficha.Nota:=SpinEdit1.Value;
Ficha.Categoria:=ComboBox1.ItemIndex;
Write(arq,Ficha);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Seek(arq,0);
while not (EOF(arq)) do
Read(Arq,Ficha);
Memo1.Lines.Add(´Nome´+Ficha.Nome);
Memo1.Lines.Add(´Prato´+Ficha.Prato);
Memo1.Lines.add(´Preco´+FloatToStr(Ficha.Preco));
Memo1.Lines.Add(´Nota´+IntToStr(Ficha.Nota));
[b:e07b573c9b] Memo1.Lines.Add(´Categoria´+ComboBox1.Items(Ficha.Categoria)); [/b:e07b573c9b]
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
AssignFile(Arq,´Boteco.bar´);
Rewrite(arq);
end;
end.
Vejam só:
É um programa que avalia estabelecimentos,
o usuário entra com os seguintes valores:
Nome do local: ( edit 1 )
Prato Principal ( edit 2)
Preço ( edit 3 )
Nota do prato ( Spinedit1 ) ( 1 a 20 )
Categoria ( Combobox1 )
Há um botão CADASTRAR ( Button 1 )
isso é uma guia do page control.
em outra pagina do page control há um MEMO1, para exibir os valores e um botão para acionar os arquivos gravados.
Quando eu rodo, ele indica erro aqui ( em negrito )
-----------------------------------------------------------------------
unit ex;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, StdCtrls, Spin, ComCtrls;
type
TForm1 = class(TForm)
PageControl1: TPageControl;
TabSheet1: TTabSheet;
TabSheet2: TTabSheet;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Label4: TLabel;
Label5: TLabel;
Edit3: TEdit;
SpinEdit1: TSpinEdit;
ComboBox1: TComboBox;
Button1: TButton;
Memo1: TMemo;
Button2: TButton;
Edit1: TEdit;
Edit2: TEdit;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
private
{ Private declarations }
public
{ Public declarations }
end;
type
TRestaurante = record
Nome : string[20];
Prato: string[10];
Preco: real;
Nota: integer;
Categoria: integer;
end;
var
Form1: TForm1;
Ficha: Trestaurante;
Arq: File of TRestaurante;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Ficha.Nome:=Edit1.text;
Ficha.Prato:=Edit2.text;
Ficha.Preco:=Strtofloat(edit3.text);
Ficha.Nota:=SpinEdit1.Value;
Ficha.Categoria:=ComboBox1.ItemIndex;
Write(arq,Ficha);
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
Seek(arq,0);
while not (EOF(arq)) do
Read(Arq,Ficha);
Memo1.Lines.Add(´Nome´+Ficha.Nome);
Memo1.Lines.Add(´Prato´+Ficha.Prato);
Memo1.Lines.add(´Preco´+FloatToStr(Ficha.Preco));
Memo1.Lines.Add(´Nota´+IntToStr(Ficha.Nota));
[b:e07b573c9b] Memo1.Lines.Add(´Categoria´+ComboBox1.Items(Ficha.Categoria)); [/b:e07b573c9b]
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
AssignFile(Arq,´Boteco.bar´);
Rewrite(arq);
end;
end.
Eleganced
Curtir tópico
+ 0
Responder
Posts
09/10/2008
Facc
Qual é o erro?
Responder
Gostei + 0
09/10/2008
Wilson Brito
ComboBox1.Items[b:5337383579]([/b:5337383579]Ficha.Categoria[b:5337383579])[/b:5337383579];
Correção: Trocar parênteses por colchetes:
Correção: Trocar parênteses por colchetes:
Memo1.Lines.Add(´Categoria´+ComboBox1.Items[Ficha.Categoria]);
Responder
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)