-
Total de itens
9.657 -
Registro em
Tudo que Jhonas postou
-
como utilizar banco em mysql de um site no meu sistema?
pergunta respondeu ao Greed de Jhonas em Delphi, Kylix
Veja estes posts : http://scriptbrasil.com.br/forum/index.php...mp;highlite=vpn abraço -
Oi Eder... Vou te dar um exemplo: Uses Math; function TBRound(Value: Extended; Decimals: integer): Extended; var Factor, Fraction: Extended; begin Factor := IntPower(10, Decimals); { A conversão para string e depois para float evita erros de arredondamentos indesejáveis. } Value := StrToFloat(FloatToStr(Value * Factor)); Result := Int(Value); Fraction := Frac(Value); if Fraction >= 0.5 then Result := Result + 1 else if Fraction <= -0.5 then Result := Result - 1; Result := Result / Factor; end; procedure TForm1.Button1Click(Sender: TObject); Var V1, V2 : Real; begin V1:=StrTofloat('1,23'); V2:=StrToFloat('2,10'); Showmessage(FloatToStr(trunc(V1+V2))); Showmessage(FloatToStr(TBRound(V1+V2+0.60,0))); end; abraço
-
Estou com uma duvida: Voce não esta com duvida, o correto seria dizer que não sabe como fazer.... vou lhe dar uma ajuda....mas só desta vez unit Unit1; interface uses Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls; type TForm1 = class(TForm) Button1: TButton; Button2: TButton; Button3: TButton; Button4: TButton; Iniciar: TButton; Cancelar: TButton; procedure Button1Click(Sender: TObject); procedure Button2Click(Sender: TObject); procedure Button3Click(Sender: TObject); procedure Button4Click(Sender: TObject); procedure IniciarClick(Sender: TObject); procedure CancelarClick(Sender: TObject); private { Private declarations } public { Public declarations } end; var Form1: TForm1; botao : array[1..4] of integer; num : integer = 0; implementation {$R *.DFM} uses MMSystem, Urlmon, WinInet; function DetectarInternet: Boolean; var Flags : dword; begin Result := InternetGetConnectedState(@Flags, 0); end; procedure TForm1.Button1Click(Sender: TObject); begin num := num + 1; botao[num] := 1; end; procedure TForm1.Button2Click(Sender: TObject); begin num := num + 1; botao[num] := 2; end; procedure TForm1.Button3Click(Sender: TObject); begin num := num + 1; botao[num] := 3; end; procedure TForm1.Button4Click(Sender: TObject); begin num := num + 1; botao[num] := 4; end; procedure TForm1.IniciarClick(Sender: TObject); var i : integer; begin // executar os botoes for i := 1 to 4 do begin case botao[i] of 1 : begin // Ejetar a bandeja do CDROM mciSendString('Set cdaudio door open wait', nil, 0, handle); end; 2 : begin // Fechar a bandeja do CDROM mciSendString('Set cdaudio door closed wait', nil, 0, handle); end; 3 : begin // Abrir Navegador em uma URL HlinkNavigateString(nil,'http://www.google.com.br'); end; 4 : begin // Detectar Internet if DetectarInternet = true then showmessage('Internet Conectada') else showmessage('Internet Desconectada'); end; end; end; end; procedure TForm1.CancelarClick(Sender: TObject); begin // zerar todas as açoes num := 0; end; end. OBS: voce clica nos botoes que quer realizar as açoes, e os mesmos serão guardados na sequencia dos clicks quantas vezes voce quiser. Depois quando clicar no botao iniciar, será executado as açoes na sequencia dos clicks; Para zerar a sequencia, basta clicar no botao Cancel Observe que no comando For eu utilizei um contador ate 4 ... mas para mais que 4 clicks nos botoes voce tera que contar quantos itens de array existem e colocar no comando For abraço
-
Como gerar planilha br-office no delphi
pergunta respondeu ao Alisson Freitas de Jhonas em Delphi, Kylix
A resposta para este problema http://www.sqlmanager.net/products/tools/advancedexport abraço -
(Resolvido) Buscar Sempre a primeira data da semana ...
pergunta respondeu ao robinhocne de Jhonas em Delphi, Kylix
Não entedi muito bem isso, mas o componente MonthCalendar1 da paleta WIN32 o default é domingo e pode ser alterado pela propriedade FirstDayOfWeek. abraço -
1 - Se o BD está em um servidor, use a politica de segurança do servidor, sem a senha de acesso ao servidor, niguem tira uma copia do seu BD. 2 - Se o BD esta em uma maquina em outras pessoas tem acesso, voce poderia criptografar os registros das tabelas, e neste caso voce teria " Segurança X Performance ". Ou seja ... mais segurança menos performance. Existem alguns componentes para isto. 3 - Deixar invisivel o BD em uma pasta criada por voce em um caminho especifico ( não aparece para usuario nenhum e nem pesquisar econtra ), que seria acessada apenas atraves do seu programa .... li alguma coisa a respeito a muito tempo atraz na internet, mas nem me lembro mais onde. abraço
-
exemplo procedure TForm1.Button1Click(Sender: TObject); var hora1, hora2, Tothoras : TTime; begin hora1 := strtotime(Edit1.Text); // '08:35' hora2 := strtotime(Edit2.Text); // '07:25' tothoras := hora1 + hora2; label1.Caption := timetostr(tothoras); // '16:00' end; abraço
-
Alguns endereços sobre o assunto: http://www.guiadohardware.net/faq/linux-sl...-diferenca.html http://www.guiadohardware.net/comunidade/i...itetura/726881/ http://www.linuxbsd.com.br/forum/viewtopic...d968dbab9f6a0f5 http://pt.wikipedia.org/wiki/Anexo:Lista_d...e_processadores http://www.intel.com/portugues/technology/...ctions-1006.htm http://www.ic.unicamp.br/~rodolfo/Cursos/m...uperh-texto.pdf abraço
-
(Resolvido) Mostrar dados no Dbgrid dependendo do Tipo de pg
pergunta respondeu ao robinhocne de Jhonas em Delphi, Kylix
acho que não será possivel, pois ao compilar o programa voce terá este erro: Cannot assign to a read-only property melhor é criar outro campo .. pode ser até tabalhoso para voce agora, mas vai simplificar muito depois abraço -
(Resolvido) TStringGrid (OnDrawCell) - Problema com CPU Usage
pergunta respondeu ao Buz de Jhonas em Delphi, Kylix
O evento OnDrawCell é um evento que se repete indefinidamente enquanto voce estiver com o foco do mouse no form onde está a grid. Cells[ACol, ARow] := Cells[ACol, ARow]; //Para atualização da células voce com este comando está mantendo um loop infinito, o que acaba consumindo mais processamento que tal fazer este procedimento apenas quando voce selecionar uma celula procedure TForm1.StringGrid1SelectCell(Sender: TObject; ACol, ARow: Integer; var CanSelect: Boolean); begin with grid_alunos do begin //Colorir a linha qd selecionada if ARow = aluno_selecionado then Canvas.Brush.Color := $7FFFFF; if ARow <> aluno_selecionado then Canvas.Brush.Color := clwhite; Canvas.Brush.Style := bsSolid; canvas.Font.Style := []; canvas.Font.Color := clblack; rect.Right := rect.Right + grid_alunos.GridLineWidth; canvas.FillRect(rect); Canvas.TextOut(Rect.Left,Rect.Top,Cells[ACol, ARow]); Cells[ACol, ARow] := Cells[ACol, ARow]; //Para atualização da células end; panel1.Update; end; abraço -
Oi Eder.. Sim ... use uma query com o comando select distinct que voce não tera registros repetidos exemplo select distinct tipo_ligação from Nome_sua_Tabela depois é só linkar o DBLookupComboBox com a query abraço
-
Uma das maneiras procedure TForm1.Button1Click(Sender: TObject); var hora : TTime; begin hora := now; label1.caption := timetostr(hora); if (timetostr(hora) >= '06:00:00') and (timetostr(hora) <= '12:00:00') then showmessage('Manha'); if (timetostr(hora) >= '12:01:00') and (timetostr(hora) <= '18:01:00') then showmessage('Tarde'); if (timetostr(hora) >= '18:01:00') and (timetostr(hora) <= '23:59:00') then showmessage('Noite'); if (timetostr(hora) >= '00:01:00') and (timetostr(hora) <= '05:59:00') then showmessage('Madrugada'); end; abraço
-
Faltou voce definir o uses TLHelp32; Eu até poderia te passar uma solução pronta, mas o que voce aprenderia ? Então vou te propor um exercicio de raciocínio ... vou te dar parte da solução e vamos ver como voce se sai...ok ? Qual a lógica ou raciocínio para obter o resultado esperado para este problema: 1 - o que eu quero: elaborar um programa que liste os processos em andamento no windows, faça uma comparação de tempos em tempos com uma lista de amostra dos mesmos processos x segundos atraz, e caso o processo tenha parado mostrar o nome do processo e atualizar a lista de amostra. 2 - o que eu preciso: a) uma rotina para listar todos os processos B) fazer uma copia desta lista para servir de amostra c) uma rotina de tempo para comparar as duas listas d) mostrar o nome do processo parado e atualizar novamente a lista de amostra 3 - que componentes usar: a) um Form B) dois listview c) um bitbtn d) um timer ----------------------------------------------------------- Para começar vou te dar o endereço de uma rotina para listar os processos do windows http://www.swissdelphicenter.ch/torry/showcode.php?id=593 Desta maneira vou te ensinar a pensar sobre o problema e como chegar na solução. abraço
-
Aparecem estas telas de suporte da microsoft, porque o XP está encontrando varias incompatibilidades entre o software e o hardware, e neste caso voce teria que baixar as atualizações corretas para que o seu hardware funcione corretamente. abraço
-
qual é a versão do Delphi qu está usando ? qual o seu nivel de conhecimento na linguagem ? qual a lógica que voce esta usando para conseguir resolver o problema ? o que voce já codificou ? quais os erros que está encontrando ? qual a finalidade deste programa ? abraço
-
Voce pode usar estes componentes ou usar os do IBX...a maneira de usar não será muito diferente não. Os codigos de inserção, deleção, etc serão escritos manualmente se voce utilizar botões para cada comando, ou pode usar o DBNavigator e só terá que acrescentar poucos comandos. Veja este Tutorial do IBX http://www.delphibr.com.br/tutoriais.php abraço
-
Se voce procurasse na pesquisa do forum pela palavra mp3 acabaria encontrando este post entre outros http://scriptbrasil.com.br/forum/index.php...st&p=481924 abraço
-
Não... após a inserção, voce tem que dar o commit para que seu banco de dados seja atualizado para toda a rede, entretanto no outro micro para poder ver esta atualização, voce deve fechar e abrir novamente a query ou dar um refresh, caso contrario voce não vera a atualização do registro. OBS: lembre-se que o seu programa rodara independente em cada micro ( executaveis em cada micro ) , no entanto todos estarão apontando o mesmo caminho para o banco de dados na rede ... então em cada um voce deve comandar a atualização, como foi dito acima. abraço
-
(Resolvido) colocar em ordem alfabética
pergunta respondeu ao Arrais Júnior de Jhonas em Delphi, Kylix
Faça uma verificação no edit, se nada for digitado então não executa o comando ex: if edit1.text = '' then exit; Arrais ... peço a voce que faça uso da pesquisa do forum, pois como já disse, voce vai solucionar muitas das suas duvidas, uma vez que já existem posts respondidos com a mesma duvida ... ok se voce procurasse pela palavra "tradução" acabaria encontrando este post http://scriptbrasil.com.br/forum/index.php...st&p=443189 abraço -
Consegui sanar a sua dúvida neste post ? http://scriptbrasil.com.br/forum/index.php...st&p=449133 E mais, eu devo usar mesmo um MDOTransaction pra cada tabela? Posso usar Botoes com Actionlist sem problemas? Voce pode usar o mesmo MDOTransaction para todas as tabelas e pode usar Botoes com Actionlist sem problemas. abraço
-
(Resolvido) colocar em ordem alfabética
pergunta respondeu ao Arrais Júnior de Jhonas em Delphi, Kylix
Se voce leu o tutorial do ADO saberia como colocar os componentes e fazer os links eu te passei somente um exemplo... não é para coloca-lo no seu codigo como esta, voce deve fazer as modificações que forem necessarias select * from Nome_Da_Sua_Tabela WHERE Nome_Do_Campo_Da_Sua_Tabela LIKE :NOM ORDER BY Nome_Do_Campo_Da_Sua_Tabela // Ordena alfabeticamente o conteudo do campo coloco onde? O comando select ira dentro do componente ADOQuery .... o que voce entende por Nome_da_sua_tabela ou Nome_do_campo_da_sua_tabela ? procedure TForm1.SpeedButton1Click(Sender: TObject); begin adotable1.Filtered := False; adotable1.Filter := 'nomedofilme like ' + #39 + '%' + Edit1.Text + '%' + #39; adotable1.Filtered := True; end; se voce consegue filtrar os registros desta maneira então use o mesmo codigo dentro do Edit1 no evento OnChange e veja o que acontece Procure utilizar a pesquisa do forum ... já temos varios posts respondidos com a sua duvida exemplo: procure pelas palavras ADO, SQL, Select, Pesquisa , Access ... entre outras ... voce vai conseguir tirar muitas das suas duvidas. Lembre-se ... Um Bom Programador .... é sinônimo de muita leitura e anos de testes práticos abraço -
Existem alguns programas que convertem NWFS para NTFS ou FAT Veja estes endereços: http://diskpatch-partition-repair.diy-data...alienpicks.com/ http://www.itshareware.com/prodview-code_3...ry-software.htm http://portuguese.articlespublish.com/comp...o-software.html http://www.click-now.net/html/PartitionMagic.htm abraço
-
(Resolvido) colocar em ordem alfabética
pergunta respondeu ao Arrais Júnior de Jhonas em Delphi, Kylix
CDS_Nome_Da_Tabela // componente ADODataSet Nome_Da_Tabela_IB // componente ADOQuery Tutorial do ADO http://www.delphibr.com.br/artigos/AccessADO.php Tutorial do IBX http://www.delphibr.com.br/tutoriais.php abraço -
Procure com calma que voce vai achar Voce montara uma rotina dentro de um timer que será executado a cada x segundos, coparando a lista atual com a lista de amostra... ( por exemplo um listbox ) nesta comparação o processo que não mais estiver rodando será mostrado em um showmessage ou num MessageDlg. Saber Pesquisar tambem faz parte do aprendizado. abraço
-
Tente esta modificação: dm.ZQuery1.SQL.Clear; dm.ZQuery1.SQL.Add('SELECT nome'); dm.ZQuery1.SQL.Add('FROM materia_prima'); dm.ZQuery1.Open; cmbNome.Items.Clear; // limpar o combobox. while not dm.zquery1.eof do begin cmbNome.Items.Append(dm.zquery1.FieldByName('nome').asString); dm.zquery1.next; end; abraço