Ir para conteúdo
Fórum Script Brasil

Jhonas

Monitores
  • Total de itens

    9.657
  • Registro em

Tudo que Jhonas postou

  1. se voce entendeu este codigo .... bastaria fazer desta maneira abra a tabela em outro lugar ( Table1.Open; ) ; procedure TForm1.Button1Click(Sender: TObject); begin Table1.Prior; // registro anterior end; procedure TForm1.Button2Click(Sender: TObject); begin Table1.Next; // proximo registro end; abraço
  2. Colega, como parece que voce ainda não manja muito do delphi, vai ai um exemplo bem simples unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Edit6: TEdit; Edit7: TEdit; Edit8: TEdit; Edit9: TEdit; Edit10: TEdit; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; Num_parcelas : integer; valor : real; valor_parcelas : real; implementation {$R *.DFM} procedure TForm1.Button1Click(Sender: TObject); var i : integer; begin Num_parcelas := 5; valor := 150.50; valor_parcelas := valor / Num_parcelas; for i := 1 to Num_parcelas do begin case i of 1: begin edit1.text := format('%n',[valor_parcelas]); edit6.text := datetostr(now); end; 2: begin edit2.text := format('%n',[valor_parcelas]); edit7.text := datetostr(now+30); end; 3: begin edit3.text := format('%n',[valor_parcelas]); edit8.text := datetostr(now+60); end; 4: begin edit4.text := format('%n',[valor_parcelas]); edit9.text := datetostr(now+90); end; 5: begin edit5.text := format('%n',[valor_parcelas]); edit10.text := datetostr(now+120); end; end; end; end; end.
  3. vamos entender o que esta acontecendo: SQL.ADD ('Set Observacao = ' + QuotedStr(MemoObs.text)); SQL.Add ('where aluno = '+txtmat.Text +' and Data = '+(QuotedStr(FormatDateTime('dd.mm.yyyy',(StrToDate(TxtData.Text) ) )))); a clausula where diz que se o aluno for igual a (txtmat.Text) e a Data for igual a (QuotedStr(FormatDateTime('dd.mm.yyyy',(StrToDate(TxtData.Text) ) )))) então todos esses registros terão um Update em seus registros... se voce que fazer um Upate em apenas um registro, este registro deve ser unico, ou seja, deve ter um campo que o valor não seja igual a um outro. verifique com calma os registros da sua tabela.
  4. coloque o seu codigo para poder ajudar....
  5. Colega é praticamente a mesma coisa procedure TForm1.GroupBox1Enter(Sender: TObject); begin GroupBox1.Hint := 'Mensagem ok'; end; abraço
  6. Jhonas

    Delphi e MySql

    basta criar o seu banco de dados, e copia-lo no servidor em um diretorio especifico, e no seu programa voce especifica este caminho ( do servidor ) para ele achar o banco de dados. abraço
  7. Um dos problemas é que voce esta carregando toda a tabela de uma vez, neste caso pode ajudar se carregar apenas parte dos registro que voce precisa, usando sql com parametros. Outro problema é o chipset da placa mãe do seu micro, se for um da serie SIS 7000 pode esquecer ... eles são muito ruins ( deixa muito lento quando tem que manipular grandes quantidades de registros ) ...a solução neste caso seria trocar a sua placa mãe. abraço
  8. esta mensagem significa que ele não pode executar a operação porque a tabela esta fechada.... voce tem que abrir a tabela com Table1.Open // Read through all records in a table and update // the ProgressBar accordingly. procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin with ProgressBar1 do begin Table1.Open; Min := 0; Max := Table1.RecordCount; Table1.Prior; // registro anterior for i := Min to Max do begin Position := i; Table1.Next; end; end; end; // Read through all records in a table and update // the ProgressBar accordingly. procedure TForm1.Button2Click(Sender: TObject); var i: Integer; begin with ProgressBar1 do begin Table1.Open; Min := 0; Max := Table1.RecordCount; Table1.Next; // proximo registro for i := Min to Max do begin Position := i; Table1.Next; end; end; end; abraço
  9. procure pelos exemplos do delphi ( tem o que voce esta querendo ) ... no delphi 5 esta em: C:\Arquivos de programas\Borland\Delphi5\Demos\Coolstuf no delphi 3 esta em: C:\Arquivos de programas\Borland\Delphi 3\Demos\COOLSTUF abraço
  10. Jhonas

    dúvida em horas

    procedure TForm1.Button1Click(Sender: TObject); begin label1.Caption := 'Horário Verão ' + timetostr(time()); label2.Caption := 'Horário Atual ' + timetostr(time()- strtotime('01:00:00')); end; procedure TForm1.Timer1Timer(Sender: TObject); begin label1.Caption := 'Horário Verão ' + timetostr(time()); label2.Caption := 'Horário Atual ' + timetostr(time()- strtotime('01:00:00')); end; Voce pode colocar o codigo num botao ou em um timer abraço
  11. Jhonas

    Componente WebBrowser

    ele é apenas uma notificação de evento, ou seja, quando estiver fazendo um download, voce pode notificar o ususario que o download começou. ( ler a tradução do help ) se não me engano o delphi tem exemplos para isto ... se estiver usando o delphi 5 procure C:\Arquivos de programas\Borland\Delphi5\Demos\Coolstuf abraço
  12. faça esta modificação procedure TForm1.Edit2Change(Sender: TObject); begin DM.adoquery1.close; DM.adoquery1.Sql.clear; DM.adoquery1.Sql.Add('select * from produtos'); DM.adoquery1.Sql.Add('where nome like :VarNome'); DM.adoquery1.Parameters.ParamByName('VarNome').Value := '%' + trim(Edit2.Text) + '%'; DM.adoquery1.open; end; OBS: a busca sera onde encontrar a letra do texto, caso não esteja como voce quer faça isto: DM.adoquery1.Parameters.ParamByName('VarNome').Value := '%' + trim(Edit2.Text); abraço
  13. entendi .. voce pode alterar mais de um campo.... veja UPDATE {table | view} SET col = <val> [, col = <val> …] [WHERE <search_condition>] de acordo com o help do SQL esta opção permite voce colocar n colunas de sua tabela que voce quiser modificar SET col = <val> [, col = <val> …] abraço
  14. veja se a sua duvida não é parecia com esta http://scriptbrasil.com.br/forum/index.php...st&p=461714 OBS: procure no forum, já tem duvidas semelhantes a sua já resolvidas ( já postei endereços de apostilas de interbase tambem ) abraço
  15. OBS: o erro pode estar aqui ( SQL.Add ('Update Praticas' ) ) ele pegou a seleção pelo nome ou pela matricula e não pelo dia, por isso ele trocou todas as aulas daquele aluno. SQL.Add('WHERE aluno = '+txtmat.Text); mude esta clausula onde voce seleciona o registro SQL.Add('WHERE (aluno = '+txtmat.Text + ') and (dia = ' + <colocar a data especifica >)'); abraço
  16. colega, eu não tenho o delphi 2005, mas creio que não seja muito diferente das demais versões; voce pode usar um componente pronto o DBNavigator ou usando botoes ficaria assim exemplo usando tabelas: // Read through all records in a table and update // the ProgressBar accordingly. procedure TForm1.Button1Click(Sender: TObject); var i: Integer; begin with ProgressBar1 do begin Min := 0; Max := Table1.RecordCount; Table1.Prior; // registro anterior for i := Min to Max do begin Position := i; Table1.Next; end; end; end; // Read through all records in a table and update // the ProgressBar accordingly. procedure TForm1.Button2Click(Sender: TObject); var i: Integer; begin with ProgressBar1 do begin Min := 0; Max := Table1.RecordCount; Table1.Next; // proximo registro for i := Min to Max do begin Position := i; Table1.Next; end; end; end; abraço
  17. Jhonas

    Componente WebBrowser

    veja o help tradução algumas dicas: http://www.arquivodecodigos.net/arquivo/vi...p?qual_dica=287 http://scriptbrasil.com.br/forum/index.php...st&p=444613 http://www.htmlstaff.org/ver.php?id=1162 http://www.codigofonte.com.br/busca/codigo...odas/javascript abraço
  18. Para fazer isto de um duplo clique na proriedade Hint do groupbox, aparecerá a janela do GroupBox1.Hint, digite dentro desta janela: F1 Dinheiro, na proxima linha F2 Cartão, etc, clique no botão <Save> e deixe a propriedade ShowHint como true. Ao parar o mouse na area do groupbox ele mostrara a informação por alguns segundos e sumira; se mexer novamente o mouse e pará-lo novamente a informação voltara a aparecer novamente. OBS: voce pode fazer a mesma coisa para os CheckBox. abraço
  19. função para retornar a diferenca de dias entre duas datas function DifDias(DataVenc:TDateTime; DataAtual:TDateTime): String; Var Data: TDateTime; dia, mes, ano: Word; begin if DataAtual < DataVenc then begin Result := 'A data data atual não pode ser menor que a data inicial'; end else begin Data := DataAtual - DataVenc; DecodeDate( Data, ano, mes, dia); Result := FloatToStr(Data)+' Dias'; end; end; colocando esta função no seu codigo fica assim: IF TPagarDataVencimento.AsString < DateToStr(Now) then begin TPagar.Edit; TPagarSituacao.Value:= 'Pendente de pagamento'; TPagar.Post; end else begin IF TPagarDataVencimento.AsString > DateToStr(Now) then vencimento:= TPagarDataVencimento.value; emissao:= TPagarDataEmissao.value; dias := DifDias(vencimento,emissao); ShowMessage('Você têm mais ' + FLoatTOStr(dias) + ' dias de prazo'); TPagar.Edit; TPagarSituacao.Value:= 'Não vencida'; TPagar.Post; end; abraço
  20. Jhonas

    Paleta Interbase

    endereços das apostilas https://www.scriptbrasil.com.br/apostilas/p...amas/interbase/ http://www.4shared.com/file/25016959/5296a...terbaseibx.html http://www.delphibr.com.br/apostilas.php ARTIGOS: https://ssl3.porta80.com.br/activedelphi/mo...cle&sid=170 http://bdn.borland.com/article/0,1410,27201,00.html http://bdn.borland.com/article/0,1410,25870,00.html EXEMPLOS: http://codecentral.borland.com/codecentral...isting?id=16744 http://codecentral.borland.com/codecentral...isting?id=15342 http://codecentral.borland.com/codecentral...isting?id=15725 http://codecentral.borland.com/codecentral...isting?id=20045 http://codecentral.borland.com/codecentral...isting?id=16214 http://codecentral.borland.com/codecentral...isting?id=15450 http://codecentral.borland.com/codecentral...isting?id=15048 http://codecentral.borland.com/codecentral...isting?id=15205 abraço
  21. só há razão para compilar o codigo todos dias se houver modificações neste codigo todos os dias... não vejo a lógica para isso, pode explicar melhor ???
  22. no minimo o seu QR deve ter uma altura de 350 mm, se voce der duplo click numa area não utilizada do QR voce vai ver uma janela chamada Report Settings, onde na opção Paper Size voce não vai encontrar nenhuma configuração de tamanho de pagina com 350 mm o mais proximo seria a opção B4 250 x 354 mm entretanto voce pode tentar usar a opção Custom Size onde voce é que define o tamanho da pagina do QR ( width (210) e Length (350)) e depois disso clique no botao Apply, pronto, esta configurado o novo tamanho de papel para o seu QR, e quando for imprimir vai ficar certinho. abraço
  23. se as tabelas já estão referenciadas por um campo comum ( ex: codigo ) então basta montar um select e usa-lo no QR. a SQL contera todos os campos ( ou somente aquelas selecionadas ) das 3 tabelas, e a partir disso só montar a disposição desses campos no QR exemplo SELECT Atestado.FICHA_NUM, Atestado.ASSISTENCIA, Exames.EXAME, Funcionarios.FUNCIONARIO FROM ATESTADO Atestado INNER JOIN EXAMES Exames // juntar a tabela Atestado com a de Exames ON (Atestado.EMPRESA = Exames.NOME_EMPRESA) // relação de igualdade entre as tabelas INNER JOIN FUNCIONARIOS Funcionarios // juntar a tabela Atestado com a de funcionarios ON (Atestado.EMPRESA = Funcionarios.EMPRESA) // relação de igualdade entre as tabelas OBS: note que os campos selecionados foram um de cada tabela, mas voce vai selecionar as que voce precisa de cada uma das suas tabelas abraço
  24. colega, ( compilar ) projeto via linha de comando ... não faz muito sentido a não ser que este projeto seja em clipper ou outra linguagem em ambiente DOS, mas ( executar ) um projeto via linha de comando é diferente .... qual realmente voce quer ?
  25. procedure TForm1.FormCreate(Sender: TObject); var Button : TButton; i, a, b : Integer; begin a := 10; b := 40; For i := 1 To 6 do begin Button := TButton.Create (Self); With Button do begin Top := a; Left := b; Parent := Form1; end; a := a + 30; // 06 botoes na vertical //b := b + 75; // 06 botoes na horizontal end; end; OBS: o codigo acima mostra 6 botoes na vertical, se desabilitar a linha de codigo a:= a+ 30 e habilitar a linha b := b+75 voce tera 6 botoes na horizontal, e se deixar as duas linhas habilitadas tera 06 botoes na diagonal abraço
×
×
  • Criar Novo...