
António44
Membros-
Total de itens
168 -
Registro em
-
Última visita
Tudo que António44 postou
-
Nunca me tinha acontecido ,isto??? Na tabela uso campo Auto incremento mas quando grava não ordena os registos e no scroll do mouse com o foco no dbGrid passa do primeiro para o ultimo e do ultimo para o primeiro registo na DBgrid se DBgrid não estar no foco rola normal passando os registos 1 em 1 ??? Mas no DbNavigator passa sempre os registos normal ???. Faz isto em todas as tabelas que uso campo +Auto incremento. Poderiam ter uma ideia do problema? Agradecido
-
procedure TFotoskiko.BitBtn4Click(Sender: TObject); Var g:integer; begin g:= 0; JvThumbView1.Selected:=(JvThumbView1.Selected+(g+1)); end; procedure TFotoskiko.BitBtn5Click(Sender: TObject); Var g:integer; begin g:= 0; JvThumbView1.Selected:=(JvThumbView1.Selected-(g+1)); end; Consegui com esta solução,não está 100% mas funciona bem para navegar no JvThumbView e mostrar foto em maiores dimensões no JvThumbnail . procedure TKikinho.FormShow(Sender: TObject); begin JvThumbnail1.FileName:=(Fotoskiko.JvThumbView1.SelectedFile); end; procedure TKikinho.BitBtn2Click(Sender: TObject); Var g:integer; begin g:= 0; JvThumbnail1.FileName:=''; Fotoskiko.JvThumbView1.Selected:=Fotoskiko.JvThumbView1.Selected+(g-1); sleep(20); Timer1.Enabled:=true; end; procedure TKikinho.Timer1Timer(Sender: TObject); begin JvThumbnail1.FileName:=(Fotoskiko.JvThumbView1.SelectedFile); Timer1.Enabled:=false; end; procedure TKikinho.BitBtn3Click(Sender: TObject); Var g:integer; begin g:= 0; JvThumbnail1.FileName:=''; Fotoskiko.JvThumbView1.Selected:=Fotoskiko.JvThumbView1.Selected+(g+1); sleep(20); Timer1.Enabled:=true; end; Se por acaso surgir por ai uma ideia melhor por favor me passem. Obrigado
-
Usando um botão para selecionar o próximo ou o anterior no Componente JvThumbView . Era para identificar a primeira e a ultima imagem Agradeço
-
Resolvido; if ScrollBar1.Position=1 Then Panel1.Caption:='Janeiro' Else if ScrollBar1.Position=2 Then Panel1.Caption:='Fevereiro' Else if ScrollBar1.Position=3 Then Panel1.Caption:='Março' Else if ScrollBar1.Position=4 Then Panel1.Caption:='Abril' Else if ScrollBar1.Position= 5 Then Panel1.Caption:='Maio' Else if ScrollBar1.Position=6 Then Panel1.Caption:='Junho' Else if ScrollBar1.Position=7 Then Panel1.Caption:='Julho' Else if ScrollBar1.Position=8 Then Panel1.Caption:='Agosto' Else if ScrollBar1.Position=9 Then Panel1.Caption:='Setembro' Else if ScrollBar1.Position=10 Then Panel1.Caption:='Outubro' Else if ScrollBar1.Position=11 Then Panel1.Caption:='Novembro' Else if ScrollBar1.Position=12 Then Panel1.Caption:='Dezembro'; if ScrollBar1.Position=13 Then begin ScrollBar1.Position:=1; Panel3.Caption:=FloatToStr(StrToFloat(Panel3.Caption)+1); end; if ScrollBar1.Position=0 Then begin ScrollBar1.Position:=12; Panel3.Caption:=FloatToStr(StrToFloat(Panel3.Caption)-1); end; Calendar1.NextMonth; Usando assim funciona na perfeição //Calendar1.Month:=ScrollBar1.Position;>>>>>>Retirado Calendar1.Year:=StrToInt(Panel3.Caption); end; Obrigado.
-
Teste assim ,data 31 de Agosto seleccionada no Calendar e avançe para o més seguinte no scrollbar que será Setembro de 30 dias, como o 31 não existe no més de Setembro dá erro.
-
Sim,mas terá um jeito de ultrapassar isso? estou por exemplo com uma data de 31 seleccionada no Calendar e avanço para o més seguinte no scrollbar que será de 30 dias, como o 31 não existe no més dá erro. Como contorno isso? Ao avançar para o més seguinte se for de 30.
-
So da erro quando por exemplo o estiver num mes de 31 dias com o dia 31 seleccionado e passa para a frente ou para tráz com o scrolbar se for mes de 30 dias ai da o erro se for de 31 já náo dá . haverá jeito de contornar isso? Obrigado
-
Dias de 31 ou 29 no bisexto gera erro."Invalid argument to date encode". alguém pode dar uma ajuda a contornar isso? procedure TFormAgenda.ScrollBar1Change(Sender: TObject); begin if ScrollBar1.Position=1 Then Panel1.Caption:='Janeiro' Else if ScrollBar1.Position=2 Then Panel1.Caption:='Fevereiro' Else if ScrollBar1.Position=3 Then Panel1.Caption:='Março' Else if ScrollBar1.Position=4 Then Panel1.Caption:='Abril' Else if ScrollBar1.Position= 5 Then Panel1.Caption:='Maio' Else if ScrollBar1.Position=6 Then Panel1.Caption:='Junho' Else if ScrollBar1.Position=7 Then Panel1.Caption:='Julho' Else if ScrollBar1.Position=8 Then Panel1.Caption:='Agosto' Else if ScrollBar1.Position=9 Then Panel1.Caption:='Setembro' Else if ScrollBar1.Position=10 Then Panel1.Caption:='Outubro' Else if ScrollBar1.Position=11 Then Panel1.Caption:='Novembro' Else if ScrollBar1.Position=12 Then Panel1.Caption:='Dezembro'; if ScrollBar1.Position=13 Then begin ScrollBar1.Position:=1; Panel3.Caption:=FloatToStr(StrToFloat(Panel3.Caption)+1); end; if ScrollBar1.Position=0 Then begin ScrollBar1.Position:=12; Panel3.Caption:=FloatToStr(StrToFloat(Panel3.Caption)-1); end; Calendar1.Month:=ScrollBar1.Position; Calendar1.Year:=StrToInt(Panel3.Caption); end;
-
Resolvido, Obrigado Abraço
-
No campo1 Valor * percentagem campo2 = resultado . Sim a percentagem será igual para todos. Sim em todos os registos de uma só vez baseado na percentagem escolhida. Abraço
-
Tenho uma Tabela com 2 campos Valor da compra,Valor da venda. Ao valor da compra no enter do dbedit atribuo uma percentagem que é o resultado do valor da venda. Se eu quizer mudar essa percentagem em todos os registos tenho que calcular 1 a 1 . há maneira de alterar em todos os registos de uma só vez? Obrigado abraço
-
Boas Jhonas, eu resolvi assim. Uma vez que se tratava de problema na ultima faixa,não havia necessidade de activar o Timer1 então passei o Gauge1 para outro, Timer2 e assim testa logo se esta no ultimo não activa o timer1, e funciona muito bem . procedure TForm1.DBGridWithRuler1DblClick(Sender: TObject); begin MediaPlayer1.Close; // tirar a musica da tabela e salvar no disco Query1MP3.SaveToFile('c:\musica.mp3'); // abrir a musica pelo MediaPlayer e tocar MediaPlayer1.FileName := 'c:\musica.mp3'; MediaPlayer1.Open; FlatGauge1.MaxValue := MediaPlayer1.Length; MediaPlayer1.Play; timer2.Enabled := true; cap := Query1Nome.Value;; ncar := 0; if not Query1.Eof then timer1.Enabled := true; end; procedure TForm1.Timer2Timer(Sender: TObject); begin FlatGauge1.Refresh; if FlatGauge1.MaxValue <> 0 then FlatGauge1.Progress := MediaPlayer1.Position; if FlatGauge1.Progress = FlatGauge1.MaxValue then begin FlatGauge1.Progress := 0; end; end; Obrigado amigo por sua ajuda valeu...eu uso o Delphi para pequenos projectos, eu trabalho com WinCC Controle Center da Siemens. Abraço
-
amigo, pelo que eu vejo, voce tem pouca experiencia com o delphi ... É verdade não tenho não,mas a verdade é que ta dando isso ai... Uso 10MB no campo. Uso o DBNavigator. Uso o código exactamente como vc passou ,e como eu disse no post anterior. abraço Iniciando o exe se o ultima faixa estiver visivel na DBgrid e vc der click directo ela toca normal sem problema,mas se a ultima faixa não está visivel no Dbgrid e vc tiver que navegar ela até aparecer o ultimo,(Dbnavigator ou scroll....) quando vcclicka faz play mas pára logo. Eu já testei de várias maneiras ....mudei as faixas porque poderiam estar corrompidas o tamanho tb não tem problema o campo tem 10MB...???? não sei mais. Abraço
-
E verdade vc tinha razão Jhonas,a musica tava memo corrompida. Uffff Abraço Pois eu deleitei 2 ou 3 registos e a DBgrid ficou com os registos todos visiveis,,,,???? Afinal não esta resolvido não... o problema é com certeza na DBgrid porque se a ultima faixa estiver visivel na DBgrid e vc der click ela toca normal,mas se a ultima faixa não está visivel e vc tiver que rolar ela até aparecer o ultimo, quando vc faz play pára logo, ou seja pelo rolar da DBgrid ja detectou o ultimo registo e não faz o play faz logo o stop,iniciando logo directo sem rolar a dbgrid tudo bem porque só depois com a acção do timer1 é que vai detectar que é o ultimo registo e faz o stop....como resolver isto.? Abraço
-
E verdade vc tinha razão Jhonas,a musica tava memo corrompida. Uffff Abraço
-
Criei um novo projeto testei o código que vc passou e da o mesmo erro... Ao iniciar o programa vou para a ultima faixa faço um click e arranca a faixa e para logo...ou seja deteta logo ai o final da Query e faz um stop. Se fazer o play da ultima pelo botão 2. procedure TForm1.Button2Click(Sender: TObject); begin Query1.Active := false; Query1.Active := true; MediaPlayer1.Close; // tirar a musica da tabela e salvar no disco Query1MP3.SaveToFile('c:\musica.mp3'); // abrir a musica pelo MediaPlayer e tocar MediaPlayer1.FileName := 'c:\musica.mp3'; MediaPlayer1.Open; MediaPlayer1.Play; end; ele faz o play mas ai não anda o Gauge1. Abraço
-
Se vc abrir o exe e seleccionar logo a ultima faixa ela arranca e para logo....não faz o play. Se vc seleccionar outra qualquer primeiro e depois seleccionar a ultima ai ela ja toca...? eu testei com este código que vc passou e faz igual. Abraço
-
Eu usei assim e passa as faixas na boa mas se eu iniciar em qualquer fixa,mas se ir logo directo para a ultima faixa e fazer um play ele arranca e para logo... procedure TFplay.Timer3Timer(Sender: TObject); begin if MediaPlayer1.Position = MediaPlayer1.Length then begin Data.Query1.next; Play.Click; end else Begin if Data.Query1.Eof then begin MediaPlayer1.Stop; timer3.Enabled := false; end; end; end;
-
Vou usar dbgrid para passar lista, então com um timer eu faço mudar de faixa mas quando chega na ultima fica repetindo eu queria que parasse quando teminar a ultima faixa. procedure TFplay.Timer3Timer(Sender: TObject); begin if MediaPlayer1.Position = MediaPlayer1.Length then begin with DB1 do begin if SelectedIndex = Columns.Count - 1 then // Se o item atual do DbGrid não for o último campo ele muda de campo mas se é o ultimo ele repete. begin DB1.SetFocus; Query1.Next; .... end; end; end; end;
-
Porreiro. Obrigado Jhonas Abraço
-
ok, Assim como esta funciona bem, 1 de cada vez agora como faço para fazer correr a lista do dbgrid ? é igual como no listbox?
-
dando erro aqui. Erro . Cannot modify a read-only dataset. procedure TForm1.FlatSpeedButton1Click(Sender: TObject); begin If opendialog1.Execute Then begin // musica selecionada na pasta nome_musica := opendialog1.filename; // gravar na tabela Query1.Active := false; Query1.Active := true; Query1.Last; Query1.Insert; Query1.Edit; Query1Nome.Value := nome_musica; Query1MP3.LoadFromFile(nome_musica); Query1.Post; showmessage('Musica Salva'); end; end;
-
Ok Obrigado Abraço
-
Tenho aqui uma duvida no Trackbar. Com Max= 22 ele funciona bem, mas se eu meter o Max=100 e por exemplo Position=40 inicia bem o som mas quando aumento no trackbar nos 50% e nos 100% quase fica sem som porque será? Eu queria usar um som acima dos Max=22 ? procedure TRegistoMolduras.TrackBar1Change(Sender: TObject); var Count , i : longint; // 4369 begin Count := waveOutGetNumDevs; for i := 0 to Count do begin waveOutSetVolume(i,longint(TrackBar1.position*1369)*65536+longint(TrackBar1.position*1369)); end; end; Abraço
-
Ok ,vou montar o projecto para ver tudo funcionando. Obrigado Jhonas. Abraço