Ir para conteúdo
Entre para seguir isso  
gi.sam

Começando em Delphi 7

Mensagem Recomendada

Olá Galera,

Sou iniciante em Delphi, e já tenho uma idéia dos códigos, comandos...utilizado no Delphi.(Pascal)

O Problema é que:

Eu estou desenvolvendo uma aplicativo para calcular a média de 4 números. A Tela inicial terá dois botões, [Fechar], e [Calcular]. Como faço para quando eu clicar em [Calcular] abrir a tela com os campos para inserir os números?

T+ (Y)


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Galera,

Sou iniciante em Delphi, e já tenho uma idéia dos códigos, comandos...utilizado no Delphi.(Pascal)

O Problema é que:

Eu estou desenvolvendo uma aplicativo para calcular a média de 4 números. A Tela inicial terá dois botões, [Fechar], e [Calcular]. Como faço para quando eu clicar em [Calcular] abrir a tela com os campos para inserir os números?

T+ (Y)

Você deve implementar o metodo associado ao evento "On Click" do botão "Calcular", para isso clique no botão e em seguida veja o "Object Inspector", selecione a aba "Events" e escolha "On Click", dentro da Unit coloque o seguinte código:

NOME_DO_FORM.SHOW;

Se este form estiver em uma Unit separada você deve adicionar ela, em baixo de "implementation" coloque:

uses NOME_DA_UNIT;

EX:


Nome do form para calcular: FormMedia
Nome da Unit do FormMedia: UnitMedia

implementation
uses UnitMedia;
.
.
.
FormMedia.Show;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ô Hua valeu. Era isso mesmo. (Y)


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Olá Galera,

Sou iniciante em Delphi, e já tenho uma idéia dos códigos, comandos...utilizado no Delphi.(Pascal)

O Problema é que:

Eu estou desenvolvendo uma aplicativo para calcular a média de 4 números. A Tela inicial terá dois botões, [Fechar], e [Calcular]. Como faço para quando eu clicar em [Calcular] abrir a tela com os campos para inserir os números?

T+ (Y)

Agora qual seriam os campos que eu teria de colocar para inserir as variáveis(notas), e aonde eu teria q colocar os códigos.icon6.gif


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Agora qual seriam os campos que eu teria de colocar para inserir as variáveis(notas), e aonde eu teria q colocar os códigos.icon6.gif

Você pode usar o objeto "Edit" da biblioteca "Standard" (a primeira aba), nela o usuário digita o que quiser, mas lembre-se que ela já vem com um texto do tipo "EditX"(X = numero da Edit), e isso aparecerá para o usuário então você tem de apagar esse texto antes de deixar o usuário digitar, a minha sugestão é que antes de dar um show no form faça o seguinte:

Edit1.Text := '';
FormMedia.Show;

Assim antes de mostrar o formulário você apagará esse texto e a edit estará em branco. Para pegar o valor da nota digitada, basta você pegar o texto da edit e converter ele, assim:

procedure........
var nota1,nota2,media:real;
begin
nota1 := strtofloat(Edit1.Text);
.
.
.
end;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Meu código ficou assim;

procedure TForm17.Button1Click(Sender: TObject);
var
nota1, nota2,nota3,nota4,media:real;
begin
nota1 :=strtofloat(Edit1.Text);
nota2 :=strtofloat(Edit2.Text);
nota3 :=strtofloat(Edit3.Text);
nota4 :=strtofloat(Edit4.Text);
media :=(nota1+nota2+nota3+nota4)/4;
write('Sua media é=',media);
end;

más quando chega em "write('sua media é=',media);

dá erro, e não mostra o resultado. O que eu devo fazer?

Muito obrigado, suas dicas foram essenciais.


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites
Meu código ficou assim;

ShowMessage('Sua Media: '+FloatToStr(media));

Esse comando mostra uma janela em modal (você não pode mudar de janela até que feche essa).

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vcs poderiam me explicar como eu faço para fazer uma consulta a um banco de dados.

O BD já tá ligado, tudo certo, agora não sei como criar um form com o campo pra mim digitar o nome e aparecer no DBgrid. Sacô.

Eu não sei quais códigos q eu uso, eu não achei isso em nenhuma apostila. O Banco de Dados, é o Acess.

Se vcs tiverem algum material sobre isso aí, me mandem, blz?

sg.b2@hotmail.com

Valeu.

T+


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vcs poderiam me explicar como eu faço para fazer uma consulta a um banco de dados.

O BD já tá ligado, tudo certo, agora não sei como criar um form com o campo pra mim digitar o nome e aparecer no DBgrid. Sacô.

Eu não sei quais códigos q eu uso, eu não achei isso em nenhuma apostila. O Banco de Dados, é o Acess.

Se vcs tiverem algum material sobre isso aí, me mandem, blz?

sg.b2@hotmail.com

Valeu.

T+

Infelizmente nunca trabalhei com o Acess, em Delphi só trabalhei com o FireBird e não tenho nenhum material comigo, mas vai ai o que eu sei sobre acesso a banco de dados em Delphi:

--> Você antes de tudo deve criar uma conexão com o banco de dados, eu uso o objeto SQLConnection do dbExpress, nesse objeto você deve configurar qual o driver, como aqui eu só tenho o Delphi 6 as opções são: DB2, Interbase (FireBird), MySQL e Oracle. Dando uma fuçada encontrei o objeto "Database" do BDE e nele tem o driver para o Acess, mas nunca usei ele. Para conectar corretamente você deve configurar ele com usuário,senha, aonde está o banco, etc.

--> Depois de criada uma conexão, você deve criar objetos que utilizam essa conexão, se estiver usando o SQLConnection você tem duas opões "SQLClientDataSet" (Para consultas que retornam uma linha ou mais) e "SQLDataSet" (Para consultas simples que retornam apenas uma linha), olhando o BDE você tem o objeto "Table" (Para consultas apenas em uma uníca tabela associada a esse objeto) e o objeto "Query" (Para consultas em várias tabelas). Depois você "amarra" a conexão ao objeto que realizará as consultas, se estiver usando algum componente do dbExpress basta colocar no campo "DBConnectio" a conexão, nos componentes do BDE eu não encontrei como se amarra a conexão.

--> Depois de amarrar um objeto de consulta (que também pode executar um update ou delete), você deve especificar qual consulta SQL será feita, se você irá fazer uma consulta estática (sempre os mesmos campos) você pode preenxer a consulta diretamente no objeto, nos componentes do dbExpress basta preencher o campo "Command Text" e eu suponho que nos componentes do BDE seja o campo "SQL". Se as consultas forem mais especificas (variam de acordo com a ocasião) é mais aconselhável você escrever uma string com a consulta e depois alterar o texto via linha de código assim:

 var: vComando:String;
.
.
.
//comando para selecionar todos os campos de um determinado funcionario
vComando := 'select * from funcionario where funcodigo = :v01';
//tipo de comando
SQLClientDataSet.CommandType := ctQuery;
//associa o comando ao objeto que executara ele, mas ele ainda nao foi executado
SQLClientDataSet.CommandText := vComando;
//troca :v01 pelo parametro passado, indicando também o tipo, no caso String
SQLDataSet1.Params.ParamByName('v01').AsString := Edit1.Text;
//executa a consulta
SQLDataSet1.ExecSQL;

Nesse pequeno exemplo expliquei também como passa parâmetros. Agora isso que está ai é uma simplificação, pois você precisará aprender "Transações", no caso tudo que você faz através da conexão criada ainda NÃO está salvo definitivamente no banco de dados e caso ocorra uma queda de energia os dados estarão como antes de você ter alterado ele, para que os dados alterados sejam salvos definitivamente, você deve mandar o objeto da conexão executar um "commit" ou se por algum acasso ocorreu algum erro na rede ou uma exceção no seu programa e você deseja apagar os dados "não commitados" basta dar um "rolback". Além disso você deve aprender níveis de isolamento, do tipo "Read Commited" (lê apenas os dados "commitados" no banco), "Read Uncommited" (lê o que tiver de temporário e definitivo), etc. Para simplificar eu aconselho que use o nível de isolamento "Read Commited".

--> Para tornar grandes aplicações mais ágeis os SGBDs oferecem ferramentas para a criação das chamadas "Stored Procedures" que são programas prontos para executar do lado do servidos, diminuindo assim o tráfico na rede, a carga no servidor que tem de "traduzir" e compilar o comando passado. Para isso você deve associar um objeto próprio, a grosso modo funciona como um SQLClientDataSet só que no lugar do texto de comando, você diz qual é o nome da Stored Procedure.

Bom basicamente é isso que você deve ter em mente antes de tentar conectar o Delphi com um banco de dados, agora cabe a você pesquisar ou se aventurar sozinho para tentar conectar o Delphi com o banco de dados. Uma dica que me ajudou a escrever isso (com relação aos componentes do BDE) foi o próprio help do Delphi, ele pode ser muito útil. Outra coisa, se você não sabe eu aconselho a aprender pelo menos o básico de SQL (select, insert,update e delete) pois são a base para se fazer tudo em SQL.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Aê Hua, Valeu cara.

Ótima ajuda. (Y) 10 (Y)

T+


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites

O meu BD já está ligado certinho, com o DBnavigator, etc... Más como eu crio um form de pesquisa. Tipo assim:

Eu já tenho o Form criado, mas quais campos e códigos eu coloco para eu digitar o Nome, e ele me mostrar o nome e as outras informações correspondentes.(Endereço, Telefone, etc)?

Vlw (Y)

T+ Amigãos


AMD Sempron 2300, 256 MB, HD 40GB

Dreanwaver MX, Borland Delphi 7, Photoshop CS 8.0

Compartilhar este post


Link para o post
Compartilhar em outros sites
O meu BD já está ligado certinho, com o DBnavigator, etc... Más como eu crio um form de pesquisa. Tipo assim:

Eu já tenho o Form criado, mas quais campos e códigos eu coloco para eu digitar o Nome, e ele me mostrar o nome e as outras informações correspondentes.(Endereço, Telefone, etc)?

Vlw (Y)

T+ Amigãos

Dentro desse form pesquisa você pode colocar uma Edit e um botão "Pesquisar", na edit o usuário digita o nome a ser procurado e ao clicar o botão pesquisar ele chama uma procedure para fazer a pesquisa.

Nessa procedure, você implementa o comando SQL em forma de String, assim:

vComando:='select * from NOME_TABELA where nome = :v01';

Depois você troca o ":v01" pelo texto da Edit, da maneira como eu mostrei anteriormente e manda executar a consulta. Depois de executada o resultado da consulta ficará armazenado no objeto que faz a consulta (SQLDataSet,SQLClientDataSet,Query,etc.), basta você resgatar os dados e mostrar para o usuário. Para mostrar os dados você pode usar labels, edits ou até mesmo uma StringGrid (uma espécie de tabela). Para resgatar os dados você faz o seguinte:

Edit2.Text := SQLDataSet.Fields.Fields[0].AsString;

Onde o Fields[0] indica qual coluna você irá pegar, logo se a sua consulta retorna três colunas o valor de Fields[] pode ser de 0 a 2. o "AsString" é o tipo que o dado é, se você for armazenar números em variáveis coloque "AsInteger" ou outra coisa, mas se for colocar a informação em uma edit, puxe como "AsString" mesmo se o campo for numérico.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Entre para seguir isso  

×