-
Total de itens
9.657 -
Registro em
Tudo que Jhonas postou
-
(Resolvido)Abrir Aba automaticamente ao passar o Mouse
pergunta respondeu ao robinhocne de Jhonas em Delphi, Kylix
use a propriedade de TabAtPos para determinar em cima de qual aba está andando o mouse procedure TForm1.PageControl1MouseMove(Sender: TObject; Shift: TShiftState; X, Y: Integer); var tabindex: Integer; begin tabindex := PageControl1.IndexOfTabAt( X, Y ); if tabindex >= 0 then PageControl1.Pages[tabindex].show; end; abraço -
Amigo ... para tirar a dúvida de vez, eu desinstalaria o delphi, limparia os registros do windows e instalaria novamente o delphi http://download.piriform.com/ccsetup304.exe não vejo outra opção para solucionar o problema... alias qual é a versão do seu delphi ? abraço
-
o arquivo necessario é aquele que te passei no link... mas pode ser que voce tenha que incluir a referencia da bibilioteca do Acrobat no seu projeto Va em Menu > Tools > Environment Options > Library ... e faça a referencia da biblioteca do adobe abraço
-
(Resolvido) Caption do TabSheet com Imagens
pergunta respondeu ao robinhocne de Jhonas em Delphi, Kylix
o componente não tem essa propriedade ... a não ser que voce queira criar o seu proprio componente abraço -
(Resolvido) Caption do TabSheet com Imagens
pergunta respondeu ao robinhocne de Jhonas em Delphi, Kylix
exemplo: procedure TForm1.Button1Click(Sender: TObject); begin // colocar as imagens dentro dos TabSheets PageControl1.Images := ImageList1; TabSheet1.ImageIndex := 0; // indice da imagem TabSheet2.ImageIndex := 1; TabSheet3.ImageIndex := 2; end; abraço -
para o java, veja no site da receita federal http://www.receita.fazenda.gov.br/Pessoafi...JavaWindows.htm eu tenho instalado na minha maquina o acrobat 4.0, 5.0 e o 6.0 e o acrobat distiller no meu micro o exemplo que te passei funciona certinho veja no site da adobe http://www.adobe.com/products/acrviewer/acrvdnld.html abraço
-
então é erro de drive do windows ... acho que voce terá que reinstalar novamente o drive (Controladores USB (barramento serial universal)) abraço
-
acho que não, mas se for para pegar uma parte da imagem dá sim faça uma pesquisa no forum http://scriptbrasil.com.br/forum/index.php...lite=webbrowser abraço
-
var Present: TDateTime; dataini, datafim : Tdate; Ano, Mes, Dia : Word; begin Present:= EndOfTheMonth(Date); DecodeDate(Present, Ano, Mes, Dia); dataini := strtodate('01'+'/'+inttostr(Mes)+'/'+inttostr(Ano)); datafim := EndOfTheMonth(Date); showmessage('Período selecionado: ' + datetostr(dataini) + ' a ' + datetostr(datafim)); DateEdit1.Date := dataini; DateEdit2.Date := datafim; end; ou var Present: TDateTime; dataini, datafim : Tdate; Ano, Mes, Dia : Word; begin Present:= EndOfTheMonth(Date); DecodeDate(Present, Ano, Mes, Dia); dataini := StartOfTheMonth(Date); datafim := EndOfTheMonth(Date); showmessage('Período selecionado: ' + datetostr(dataini) + ' a ' + datetostr(datafim)); DateEdit1.Date := dataini; DateEdit2.Date := datafim; end; abraço
-
Voce tem que ser mais explicito ( explicar melhor a sua dúvida )
-
exemplo: procedure TForm1.Button1Click(Sender: TObject); var Present: TDateTime; dataini, datafim : Tdate; Ano, Mes, Dia : Word; begin Present:= Now; DecodeDate(Present, Ano, Mes, Dia); dataini := strtodate('01'+'/'+inttostr(Mes)+'/'+inttostr(Ano)); datafim := Now; showmessage('Período selecionado: ' + datetostr(dataini) + ' a ' + datetostr(datafim)); end; É só adaptar ao seu código abraço
-
então copie o arquivo para a pasta LIB do delphi ou no drive C:\ ou ainda na pasta do seu executavel abraço
-
Desistale novamente .... depois faça uma limpeza nos registros do windows ( use o CCleaner ou outro ) http://download.piriform.com/ccsetup304.exe Instale novamente, que deve funcionar ( a menos que haja algum problema com a camera ) abraço
-
no segundo caso, voce não precisa usar o Try Except abraço
-
na instrução select use: Select * from tbl_pag_inq where Vencimento >= '+''''+ datetostr(DateEdit1.Date) + ''''+' and Vencimento <= '+ ''''+ datetostr(DateEdit2.Date) + ''''; abraço
-
Disponibilizei o arquivo neste link http://www.4shared.com/file/fbt9nBMR/acrobat.html abraço
-
Exato... esse erro ocorre porque não foi encontrado o arquivo acrobat.tlb Esse arquivo vem junto com o pacote do acrobat reader ( qualquer versão ) No link abaixo, tem a versão do acrobat reader 9.0 em portugues http://pt.kioskea.net/download/start/baixa...der-9-portugues se voce tiver alguma versão instalada no seu micro procure: C:\Program Files\Adobe\Acrobat 4.0\Acrobat\Acrobat.tlb C:\Program Files\Adobe\Acrobat 5.0\Acrobat\Acrobat.tlb C:\Program Files\Adobe\Acrobat 6.0\Acrobat\Acrobat.tlb C:\Program Files\Adobe\Acrobat 7.0\Acrobat\Acrobat.tlb C:\Program Files\Adobe\Acrobat 8.0\Acrobat\Acrobat.tlb C:\Program Files\Adobe\Acrobat 9.0\Acrobat\Acrobat.tlb OBS: copie o arquivo para a pasta C:\Windows\Sistem32 abraço
-
OK... Código para chamar um arquivo PDF usando o OpenDialog, converte-lo para texto e copiar para um memo OBS: Voce vai precisar do arquivo acrobat.tlb unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; OpenDialog1: TOpenDialog; procedure Button1Click(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; implementation {$R *.dfm} uses ComObj; procedure TForm1.Button1Click(Sender: TObject); var App, AVDoc:Variant; begin OpenDialog1.Execute; App:=CreateOleObject('AcroExch.App'); App.Show; AVDoc:=App.GetActiveDoc; AVDoc.Open(OpenDialog1.filename,''); //seleciona tudo e copia para o clipboard App.MenuItemExecute('Edit'); App.MenuItemExecute('SelectAll'); App.MenuItemExecute('Edit'); App.MenuItemExecute('Copy'); Memo1.PasteFromClipboard; App.Exit; end; end. outro exemplo: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, OleCtrls, acrobat_tlb; type TForm1 = class(TForm) Button1: TButton; Memo1: TMemo; OpenDialog1: TOpenDialog; GroupBox1: TGroupBox; Label1: TLabel; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; procedure Button1Click(Sender: TObject); private { Private-Deklarationen } public { Public-Deklarationen } end; var Form1: TForm1; implementation uses ComObj; {$R *.dfm} {$TYPEDADDRESS OFF} //muss so sein (this have to be) var PDDoc: Acrobat_TLB.CAcroPDDoc; PDPage: Variant; PDHili: Variant; PDTextS: Variant; acrobat: Variant; Result: Boolean; NTL, i, j, Pagecount: Integer; zeilen: string; stichwortcounter: Integer; Size: Integer; gesamtstring: AnsiString; zwreal: Real; procedure TForm1.Button1Click(Sender: TObject); function removecrlf(workstring: string): string; var i: Integer; begin removecrlf := ''; for i := 0 to Length(workstring) do begin if workstring[i] = #13 then workstring[i] := ' '; if workstring[i] = #10 then workstring[i] := ' '; end; removecrlf := workstring; end; begin if not opendialog1.Execute then Exit; memo1.Clear; gesamtstring := ''; stichwortcounter := 0; Size := 0; try //Object erstellen acrobat := CreateOleObject('AcroExch.pdDoc'); //PDF Datei in Object öffnen Result := acrobat.Open(opendialog1.FileName); if Result = False then begin messagedlg('Kann Datei nicht öffnen', mtWarning, [mbOK], 0); Exit; end; for j := 0 to acrobat.GetNumPages - 1 do begin memo1.Lines.Add('----------------------------------------------'); //Erste Seite des Dokuments aktiv setzen (first page) PDPage := acrobat.acquirePage(j); //Ein Highlight Object mit 2000 Elementen erzeugen PDHili := CreateOleObject('AcroExch.HiliteList'); Result := PDHili.Add(0, 4096); //Erzeuge eine Markierung über den ganzen Text PDTextS := PDPage.CreatePageHilite(PDHili); ntl := PDTextS.GetNumText; for i := 0 to ntl - 1 do begin zeilen := PDTextS.GetText(i); if (Length(zeilen) > 0) and (zeilen <> '') then memo1.Lines.Add(removecrlf(zeilen)); gesamtstring := gesamtstring + removecrlf(zeilen); //nur für statistik Size := Size + SizeOf(zeilen); Inc(stichwortcounter); Application.ProcessMessages; end; //Wieder freigeben pdhili := Unassigned; pdtextS := Unassigned; pdpage := Unassigned; label2.Caption := IntToStr(stichwortcounter); label4.Caption := IntToStr(Size); label2.Refresh; label4.Refresh; end; //for i to pagecount except on e: Exception do begin messagedlg('Fehler: ' + e.Message, mtError, [mbOK], 0); Exit; end; end; if Size > 1024 then begin zwreal := Size / 1024; str(zwreal: 2: 1,zeilen); label4.Caption := zeilen; label5.Caption := 'KB'; end; memo1.Lines.SaveToFile(Extractfilepath(Application.exename) + '\debug.txt'); end; end. Post relacionado ao assunto http://scriptbrasil.com.br/forum/index.php?showtopic=156472 abraço
-
http://translate.googleusercontent.com/tra...X1pd6v61ZjU9jPw ou http://www.pdf-to-html-word.com/freepdf2doc.exe http://www.pdf-to-html-word.com/pdf2text.exe abraço
-
(Resolvido) Colocar o Gauge na Linha Selecionada de um DBGrid
pergunta respondeu ao Luciano Umbelino de Jhonas em Delphi, Kylix
como voce percebeu o gauge e o progressbar só aceita numeros inteiros Então a lógica para um Gauge de 100 % para cada 1% = "|" precisamos fazer um looping 100 vezes ( 100 barrinhas ) como a fonte usada nas barrinhas é o script, as barrinhas parecem uma unica barra cheia Para um Gauge com incremento de 0.5 % teriamos que ter um Gauge com duzentas barrinhas para cada 0.5% = "|" precisamos fazer um looping 200 vezes para obtermos os mesmos 100 % nesse caso voce teria que criar o seu proprio gauge para que ele aceite numeros do tipo float Como voce é iniciante, não teria como te explicar isso... mas seria algo parecido com isso OBS: Esse código é só para exemplificar o que estou falando procedure TForm1.Button1Click(Sender: TObject); var X: Integer; Total: Integer; Percent1: string; begin Total := 200; for X := 1 to Total do begin Percent1 := formatfloat(',0.00',((X * 100) / Total)); Label1.Caption := Label1.Caption +'|'; Label1.Repaint; Label2.Caption := Percent1; Label2.Refresh; Sleep(100); end; end; ou voce pode procurar na net algum componente gauge que aceite numeros do tipo float abraço -
voce pode usar http://www.baixatudo.com.br/norton-ghost-15 abraço
-
(Resolvido) Colocar o Gauge na Linha Selecionada de um DBGrid
pergunta respondeu ao Luciano Umbelino de Jhonas em Delphi, Kylix
voce quer usar o gauge no DBGrid para qual finalidade ? tem que explicar melhor a sua idéia. abraço -
Imprimir Etiquetas x vezes com QuickReport
pergunta respondeu ao Vinicius Moreira de Jhonas em Delphi, Kylix
Desenvolvi um miniaplicativo que ao entrarmos com dados em 3 Edits e clicar no botão Imprimir ele pega esses valores e joga num QuickReport no formato de uma etiqueta. Minha dúvida é a seguinte. Como eu poderia fazer para adicionar uma opção que me permitisse escolher quantas vezes eu quero imprimir esta mesma etiqueta, sendo 3 etiquetas por linha? A falta de detalhes tipo ( Versão do delphi, código usado para montar as etiquetas, tipo de impressora usada, se a folha de etiqueta é padrão da PIMACO, ou uma folha de formulário continuo, qual o layout usado no QR, etc...) impede de obter uma resposta mais rápida. abraço -
Parece que voce não entendeu o código .... é só modificar para ver em um listBox http://scriptbrasil.com.br/forum/index.php...st&p=539505 abraço
-
exemplo: Voce deve usar o evento OnKeyPress do DBGrid procedure TForm1.DBGrid1KeyPress(Sender: TObject; var Key: Char); begin if Key = #13 then // se teclar <Enter > if not (ActiveControl is TDBGrid) then begin Key := #0; Perform(WM_NEXTDLGCTL, 0, 0); end else if (ActiveControl is TDBGrid) then with TDBGrid(ActiveControl) do if selectedindex < (fieldcount -1) then begin selectedindex := selectedindex + 1; CDS_Banco.Edit; case selectedindex of 1 : CDS_BancoCODCLI.AsInteger := CDS_CadcliCOD.AsInteger; 2 : CDS_BancoDATA.value := now; 3 : if CDS_BancoDEPOSITOS.AsString = '' then selectedindex := 3; 4 : begin // comandos end; end; end; abraço