Ir para conteúdo
Fórum Script Brasil

Capablanca

Membros
  • Total de itens

    295
  • Registro em

  • Última visita

Tudo que Capablanca postou

  1. A variável do tipo WORD serve para armazenar inteiros sem sinal, com 2 bytes e valor entre 0 a 65.535. Desta forma é possível realizar operações matemáticas com ela. Abs.
  2. Olá, Evite criar um POST dentro do mesmo Para retornar o tamanho da string você pode usar a função LENGTH. Exemplo: procedure TForm1.Button1Click(Sender: TObject); var texto: string; tamanho: integer; begin texto:= '1234-56/78/9012'; tamanho:= length(texto); ShowMessage('O tamanho da string é: ' + IntToStr(tamanho)); end; Talvez tenha algum erro de digitação pois estou sem o Delphi no momento. Abs.
  3. Caramba Zolhos!!! Não sabia que tínhamos um matemático no fórum! Ricardo, você entendeu o lance e conseguiu resolver o que precisava?
  4. Gostei do seu código. Se o conteúdo do EDIT1 seguir a mesma estrutura (ou seja, três números, depois um hífen, etc.), você pode utilizar a minha sugestão que funciona perfeitamente. No entanto, se a posição do hífen variar, utilize o seu código. Quanto à enxugar o seu código, eu só tiraria a variável EditUm, de modo que ficaria assim: procedure TForm1.Button1Click(Sender: TObject); var i : integer; letra, palavra : string; begin i := 1; while not (letra = '-') do begin palavra := palavra + letra; letra := (Edit1.Text[i]); i := i + 1; end; edit2.text := palavra; end; Talvez você não tenha conseguido fazer o que queria através do meu código, por não entender o funcionamento da função COPY. A função COPY permite que se copie um "pedaço" de uma string. Veja este exemplo: procedure TForm1.Button1Click(Sender: TObject); var palavra_inteira, trecho_copiado: string; begin palavra_inteira:= 'borland'; trecho_copiado:= copy(palavra_inteira, 4, 3); ShowMessage(trecho_copiado); end; O número "4" é a localização do primeiro caractere a ser copiado da esquerda para a direita. O número "3" é a quantidade de caracteres a serem copiados a partir do primeiro caractere informado (no nosso caso, "4"). Desta forma, a variável trecho_copiado irá copiar os 3 primeiros caracteres a partir do 4º caractere contido na variável palavra_inteira (no caso, serão contados 3 caracteres a partir da letra "l", resultando na palavra "lan"). Abs.
  5. Olá, Eu fiz um exemplo para você. Baixe-o em http://www.capablanca.com.br/download/resp..._label_exec.zip A unidade completa é: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Label1: TLabel; Label2: TLabel; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); var i: integer; Lab: TLabel; begin if Edit1.Text <> '' then begin for i:= 1 to StrToInt(Edit1.Text) do begin Lab:= TLabel.Create (Form1); Lab.Caption:= 'Label nº ' + IntToStr(i); Lab.Parent := Form1; Lab.Top := 25*i; Lab.Left := 5; Lab.Width := 65; Lab.Height := 21; end; end else ShowMessage('Digite um valor'); end; end. Abs.
  6. Olá, Eu fiz um exemplo para você. Baixe-o em http://www.capablanca.com.br/download/resp...l/25_string.zip O código da Unidade é: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) btn_p1: TButton; btn_p2: TButton; btn_p3: TButton; btn_p4: TButton; Edit1: TEdit; Edit2: TEdit; Edit3: TEdit; Edit4: TEdit; Edit5: TEdit; Label1: TLabel; Label2: TLabel; procedure btn_p1Click(Sender: TObject); procedure btn_p2Click(Sender: TObject); procedure btn_p3Click(Sender: TObject); procedure btn_p4Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; texto, p1, p2, p3, p4: string; implementation {$R *.dfm} procedure TForm1.btn_p1Click(Sender: TObject); begin p1:= copy(Edit1.Text, 1, 3); Edit2.Text:= p1; end; procedure TForm1.btn_p2Click(Sender: TObject); begin p2:= copy(Edit1.Text, 4, 2); Edit3.Text:= p2; end; procedure TForm1.btn_p3Click(Sender: TObject); begin p3:= copy(Edit1.Text, 1, 3); Edit4.Text:= p3; end; procedure TForm1.btn_p4Click(Sender: TObject); begin p4:= copy(Edit1.Text, 5, 10); Edit5.Text:= p4; end; end. Abs.
  7. Olá SIN, Cara, em primeiro lugar, você deve ver qual o banco de dados que o programa está usando. Se for PARADXO com BDE (ou outro banco de dados com BDE), é necessário verificar se o caminho do banco está preenchido corretamente no BDE. Banco de dados é algo que não é pra ser complicado. Aliás, salvo poucas exceções, ele deve ser instalado de tal forma que o usuário não precise fazer configurações para o programa rodar (estou me referindo a programas simples). Programas complexos, que são instalados nas empresas, muitas vezes envolvem configurações (ou seja, não basta um simples INSTALL). Se você puder verificar qual é o banco de dados e qual é a mensagem que está aparecendo, acho que podemos te ajudar melhor. Abs.
  8. Olá, O componente existe no Delphi 7 mas precisa ser instalado (pois agora o componente padrão para impressão é o Rave Reports - muito melhor que o QR). 1) abra o Delphi 7; 2) clique no menu, Component -> InstallPackages; 3) clique sobre o botão Add; 4) selecione o diretório c:\Arquivos de programas\Borland\Delphi 7\Bin (na maioria dos casos o Delphi está instalado neste diretório); 5) na caixa de seleção de arquivos, escolha o arquivo dclqrt70.bpl, e em seguida clique no botão Abrir; 6) clique no botão OK; 7) observe que foi adicionada a guia QReport. Abs.
  9. Capablanca

    Access Em Delphi

    O uso de ODBC bem como do BDE está em desuso. Com as novas versões do Delphi surgiu a possiblidade de utilizar componentes ADO, os quais não dependem de ODBC nem do BDE para acessar o seu banco de dados.
  10. Olá novamente (há quanto tempo)... Eu fui dar uma "passeada" na livraria FNAC aqui na Avenida Paulista (em São Paulo), e eles tem apenas um livro do DELPHI 7 - Completo (não sei como). Corre lá mano!!! Abs...
  11. Capablanca

    Access Em Delphi

    Mas você já conseguiu uma versão mais recente do Delphi?
  12. Olá, Dê uma olhada neste exemplo. Ele é bastante simples mas faz o que você está precisando (ou seja, ele mudará o atributo do arquivo teste.txt se o mesmo for READ-ONLY). Coloque um componente BUTTON e adicione o código descrito abaixo no seu evento OnClick. unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} procedure ArquivosReadOnly(const Dir, Mask:string); var S:TSearchRec; begin if (FindFirst(Dir+Mask, faAnyFile-faDirectory, S)=0) then repeat if (S.Attr and faReadOnly)>0 then begin SetFileAttributes(PChar(Dir+s.Name), FILE_ATTRIBUTE_NORMAL); // DeleteFile(Dir+S.Name) // Tire os comentários desta linha caso queira excluir o arquivo READ-ONLY end until (FindNext(S)<>0); FindClose(S) end; procedure TForm1.Button1Click(Sender: TObject); begin ArquivosReadOnly('c:\', 'teste.txt') end; end. Abs.
  13. ou C:\$(DELPHI)\Lib;$(DELPHI)\Bin;$(DELPHI)\Imports;$(DELPHI)\Projects\Bpl;
  14. Ok... Foi mal. Deixe o seu Library Path apenas asim: C:\$(DELPHI)\Lib
  15. 1) Está certo. 2) Em Library path... Pelo que estou vendo ele está faltando. Deixe-o assim: C:\Arquivos de programas\Borland\Delphi7\Source\Rtl\Sys;$(DELPHI)\Lib
  16. Olá CYN, Como assim CAMPOS DE FORMULÁRIO DO WORD? O Word não tem um formulário (ou eu tem????). Parece que você quer apenas que determinado texto, que está no seu aplicativo, seja "jogado" numa página do Word. É isso?
  17. Olá, 1) Veja se o arquivo System.DCU está no seu diretório Delphi\Lib; 2) Vá em TOOLS --> Environment Options --> Library e veja se $(DELPHI)\Lib está lá.
  18. Capablanca

    Access Em Delphi

    Cara, eu não sei responder esta tua pergunta. Você está usando uma versão muito antiga do Delphi. Hoje, pra você acessar um banco de dados MS-Access, eu desaconselho o uso do BDE. Em seu lugar, use componentes ADO. Obs.: se sua escola está usando Delphi 3, procure algum lugar onde você possa instalar o Delphi 7, pois você vai estar deixando de usufruir muitos benefícios que as versões mais recentes do Delphi possuem. Utilizando componentes ADO, em "1 minuto" você se conecta a um banco de dados MS-Access, sem ter a necessidade de instalar o BDE Administrator (tanto na sua máquina como na máquina de quem quer que seja). Abs.
  19. Tente o seguinte: Antes de desinstalar, coloque o CD do Delphi 7 e clique DELPHI 7 --> NEXT ---> REPAIR, e tente reparar o seu Delphi. Depois que a reparação for concluída, tente desinstalá-lo. Abs..
  20. Capablanca

    Moderação

    hehehehe... Neste país não dá para ser músico profissional SIN... (é claro que existem as raríssimas exceções). A maioria dos músicos precisa ralar muito pra poder tirar uma grana. Os caras tocam porque gostam mesmo (e isto é o que vale, na verdade). Valeu aí pela força cara!
  21. Capablanca

    Firebird E O Ib

    Olá, No meu site (http://www.capablanca.com.br) você encontrará um tutorial sobre Firebird, o qual contém um link para fazer o download do FB diretamente do meu servidor. No entanto, você poderá baixar o InterBase 6 (free) e o Firebird 1.5 (ou 1.5.1) pelo site FireBase (http://www.firebase.com.br/fb/), na seção DOWNLOADS. Abs.
  22. Olá Paulo Nobre, Você pode alterar a variável global ShortDateFormat, através do Delphi, assim que o seu aplicativo for inicializado. Neste caso, a título de sugestão, coloque no evento OnCreate do seu formulário, o seguinte código: ShortDateFormat := 'dd/mm/yyyy'; Desta forma, o seu sistema irá funcionar corretamente. Creio que pode ser considerado um abuso sim, pois, se alguns programas do micro do usuário utilizam outro padrão de data e você altera para o seu padrão, apenas para funcionar o seu aplicativo, os demais poderão não funcionar corretamente. Neste caso, sugiro: 1) Na primeira vez que o usuário executar o programa, compare se a data esta no padrão que você. Se não estiver, mostre uma mensagem para o usuário dizendo que o programa só funcionará corretamente se o formato da data for "dd//mm/yyyy" e não a atual do sistema dele. Em seguida, faça uma pergunta se ele permite alterar este formato ou peça para ele alterá-lo "manualmente". Exemplo (você precisa declarar a unit SysUtils, caso ela não esteja na seção USES): unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs; type TForm1 = class(TForm) procedure FormCreate(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; MinhaData: TDateTime; Mensagem: String; implementation {$R *.dfm} procedure TForm1.FormCreate(Sender: TObject); var confirma: integer; begin if ShortDateFormat <> 'dd/mm/yyyy' then begin beep; confirma:= Application.MessageBox('Este aplicativo só funciona corretamente com o padrão de data DDMMYYYY. Seu sistema contém um padrão diferente. Gostaria de alterá-lo para DDMMYYYY?', 'Atenção', Mb_YesNo+Mb_DefButton2+Mb_IconQuestion); if confirma = IDYes then begin ShortDateFormat := 'dd/mm/yyyy'; end; if confirma = IDNo then begin mensagem:= 'O sistema não funcionará corretamente. '; Application.MessageBox(PChar(mensagem), 'Informação', Mb_Ok+Mb_IconInformation); end; end; end; end. 2) Você também pode usar o formato que você quer apenas no momento em que seu programa estiver sendo executado. Assim, quando ele for finalizado, você poderia deixar as configurações da data no formato antigo (em outras palavras, o formato da data só ficaria "dd/mm/yyyy" enquanto seu programa estiver aberto. Assim que ele for encerrado, o formato volta a ser o padrão do sistema do usuário). Dê uma olhada neste exemplo (você precisa declarar a unit SysUtils, caso ela não esteja na seção USES): unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; procedure Button1Click(Sender: TObject); procedure FormCreate(Sender: TObject); procedure FormClose(Sender: TObject; var Action: TCloseAction); private { Private declarations } public { Public declarations } end; var Form1: TForm1; FormatoAntigo: String; MinhaData: TDateTime; implementation {$R *.dfm} procedure TForm1.Button1Click(Sender: TObject); begin MinhaData := Now; ShortDateFormat := 'dd/mm/yyyy'; Showmessage(DateTimeToStr(MinhaData)); end; procedure TForm1.FormCreate(Sender: TObject); begin FormatoAntigo:= ShortDateFormat; end; procedure TForm1.FormClose(Sender: TObject; var Action: TCloseAction); begin ShortDateFormat:= FormatoAntigo; Showmessage(DateTimeToStr(MinhaData)); end; end. Abs.
  23. Capablanca

    Moderação

    Putz!!!!!!! Você é baixista cara! Eu curto pra caramba contra-baixo. Gosto muito daquele "japinha" do DreamTheater. Eu também tenho colegas que tocam contra-baixo e de vez em quando agente se junta num lugar pra tocar (digo, "zuar" = ). Pelo menos a nossa banda já teria um nome: "Os Delphianos"... Abs. P.A. e vamos nessa! Capablanca
  24. Olá Guttember, Por favor, não adicione tópicos com o mesmo assunto/dúvida. Abs.
  25. Capablanca

    Access Em Delphi

    Cara, existe uma paleta chamada ADO no Delphi 3?
×
×
  • Criar Novo...