Ir para conteúdo
Fórum Script Brasil
  • 0

Helpzinho Ai !


xcel3nt

Pergunta

Bem.. to começando com delphi.. dai to tendo dificuldade num programa aki...

ve se alguém pode me dá uma força ai !

Ta dando erro sempre que vou compilar.. e diz que um " end; " esta errado.. um após o " type " mas se tiro ele dá " var " errado... e numa declaração de variavel ele ta dando o " : " errado também.. dái não consegui mais seguir adiante...

unit JanPrinc;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, Menus, StdCtrls;

type
  TJanelaPrincipal = class(TForm)
    MainMenu1: TMainMenu;
    Opes1: TMenuItem;
    Alugar1: TMenuItem;
    Devolver1: TMenuItem;
    N1: TMenuItem;
    Sair1: TMenuItem;
    TituloNumCli: TLabel;
    EditNumCli: TEdit;
    MemoOcorrencias: TMemo;
    BtVerTitulos: TButton;
    CheckDisponiveis: TCheckBox;
    ListTitulos: TListBox;
    ComboGeneros: TComboBox;
    RadioLanc: TRadioButton;
    RadioNlanc: TRadioButton;
    GroupBox1: TGroupBox;
    RadioTodos: TRadioButton;
    procedure Alugar1Click(Sender: TObject);
    procedure Sair1Click(Sender: TObject);
    procedure FormCreate(Sender: TObject);
    procedure BtVerTitulosClick(Sender: TObject);
  private
    { Private declarations }
  public
    { Public declarations }
  end;

var
  JanelaPrincipal: TJanelaPrincipal;

implementation

{$R *.dfm}

procedure TJanelaPrincipal.Alugar1Click(Sender: TObject);
var
  linha : string;

begin
   if (EditNumCli.Text<> '') then
   begin
      linha :='Cliente '+EditNumCli.Text+' alugando fita(s)';
      MemoOcorrencias.Lines.Add(linha);
      EditNumCli.Text := '';
   end
   else
     ShowMessage('Informe um número de clientes antes');
   end;

procedure TJanelaPrincipal.Sair1Click(Sender: TObject);
begin
beep;
close;
end;

procedure TJanelaPrincipal.FormCreate(Sender: TObject);

type
Tfita = record
  Titulo : string;
  Qtdisp : ShortInt;
  Genero : string
  Lancamento : boolean;

  end;

var
JanelaPrincipal: TjanelaPrincipal;
Fitas : array[1..100] of Tfita;
begin

Fitas[1].Titulo := 'Velozes e Furiósos';
Fitas[1].Qtdisp := 3;
Fitas[1].Genero :='Ação';
Fitas[1].Lancamento := false;

Fitas[2].Titulo :='Xuxa e os Duendes';
Fitas[2].Qtdisp := 1;
Fitas[2].Genero := 'Infantil';
Fitas[2].Lancamento := true;

Fitas[3].Titulo := 'O professor Aloprado';
Fitas[3].Qtdisp := 3;
Fitas[3].Genero := 'Comédia';
Fitas[3].Lancamento := true;

Fitas[4].Titulo := 'CasaBlanca';
Fitas[4].Qtdisp := 0;
Fitas[4].Genero := 'Clássico';
Fitas[4].Lancamento := false;

end;

procedure TJanelaPrincipal.BtVerTitulosClick(Sender: TObject);

var
 i : integer;
 mostralanc : boolean;
 mostraTodos : boolean;

begin

mostraLanc := false;
mostraTodos := false;
ListTitulos.clear;

if (RadioTodos.Checked := true) then
mostraTodos := true
else if  (RadioLanc.Checked = true) then
mostraLanc := true;
for i:=1 to 100 do
begin
   if (fitas[i].genero = combogeneros.Text) and
        ((mostratodos = true) or (fitas[i].lancamento = mostralanc)) then
        begin
           if (Ckdisponiveis.checked = true) then
           begin
             if (fitas[i].Qtdisp > 0) then
               listTitulos.Items.add(fitas[i].TituloNumCli);
           end
           else
              listTitulos.Items.add(Fitas[i].Titulo);
           end;
    end;
end;

end.

Postem onde esta o erro ai.. valeu !!!!

Link para o comentário
Compartilhar em outros sites

11 respostass a esta questão

Posts Recomendados

  • 0

Ao invés de tirar o "end;" experimente colocar mais um abaixo dele com ponto-e-vírgula no final. Às vezes o erro não é o excesso de end e sim a falta dele

Link para o comentário
Compartilhar em outros sites

  • 0

Bem... aquele erro já foi consertado.. agora apareceu outro...

is Variable 'janelaprincipal' is declared but never in TjanelaPrincipal.form

Type of expression must beem booleam

Record, object of class type required

Link para o comentário
Compartilhar em outros sites

  • 0

private

  { Private declarations }

public

  { Public declarations }

end;

var

JanelaPrincipal: TJanelaPrincipal;

implementation

{$R *.dfm}

(...)

procedimentos

(...)

procedure TJanelaPrincipal.FormCreate(Sender: TObject);

type

Tfita = record

Titulo : string;

Qtdisp : ShortInt;

Genero : string

Lancamento : boolean;

var

JanelaPrincipal: TjanelaPrincipal;  <- Duas vezes? Não precisaria estar aqui não?

Fitas : array[1..100] of Tfita;

begin

Link para o comentário
Compartilhar em outros sites

  • 0

Linhas 125 - 128 e 130

Aí, sem zoeira, eu dei uma risada quando vi essa resposta. Pow xcel3nt, você não tá querendo q agente conte até chegar na linha cento e vinte e pouco né cara?? rsrs

Faz o seguinte: vai lá no primeiro post q você fez, aquele q tem o código da unit toda, edita o tópico pondo em negrito as linhas q tão dando erro, falou.

Link para o comentário
Compartilhar em outros sites

  • 0

a sim.. tava aki numa treva e viajei hehehehe....

(fitas.genero = combogeneros.Text) and

        ((mostratodos = true) or (fitas.lancamento = mostralanc)) then

        begin

           if (Ckdisponiveis.checked = true) then

           begin

     

125-> if (fitas.genero = combogeneros.Text) and

128-> if (Ckdisponiveis.checked = true) then

130->if (fitas.Qtdisp > 0) then

Alguém da uma ajudinha ai !!!!

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...