
Paulo Nobre
Membros-
Total de itens
717 -
Registro em
-
Última visita
Tudo que Paulo Nobre postou
-
Supondo Form1 o principal e form2 "secundário", quando minimizamos o form2 ele não vai para a barra de tarefas e sim minimiza acima dela. Existe uma maneira de contornar isto, ou seja, fazê-lo minimizar na barra de tarefas?
-
Entendi! O arredondamento é inerente da própria função FormatFloat! Obrigado s3c e Progr'amador(a quanto tempo em!! - Bom que você voltou!)
-
Num artigo que li o escritor exemplifica como arredondar. Para isto ele faz uso de duas funções: function Arredonda1(Valor :Double; Casas: Byte) :Double; var StrFormat :String; begin StrFormat := '#.'; while Casas > 0 do begin // inicializa quantidade de zeros ref. as casas decimais desejadas StrFormat := StrFormat +'0'; Dec(Casas); end; Result := StrToFloat(FormatFloat(StrFormat, Valor)); end; function Arredonda2(Valor :Double; Casas: Byte) :Double; var Multiplicador :Extended; begin Multiplicador := Power(10, Casas); // unit Math ou função acima // desloca casas à direita e arredonda Valor := Round(Valor * Multiplicador); // retorna casas à esquerda Result := Valor/Multiplicador; end; E depois para exemplificar o uso faz o seguinte: procedure TForm1.Button1Click(Sender: TObject); var Valor :Double; begin Valor := 8386.428; Label1.Caption := FloatToStr(Arredonda1(Valor, 2)); Label2.Caption := FloatToStr(Arredonda2(Valor, 2)); end; O resultado é 8386,43 Na função 2 está claro que o uso da função Round cuida do arredondamento. E na função 1, quem está fazendo o arredondamento?
-
Micheus O tópico que coloquei de novo em discussão tinha sido um que abri em 2006. Coloquei-o exatamente para não ter que abrir outro. Como o assunto é complexo, na ocasião nem boas discussões, como esta atual, foram feitas. Um visitante reabriu um outro semelhante que eu havia colocado em 2004, quando comecei a ter contato com DELPHI, que na ocasião também não chegamos a nenhuma conclusão. Não sei porque o visitante foi buscar este tópico e não aproveitou o mesmo. Embora tenha colocado este tópico a tona pela terceira vez, só agora estou podendo entender de fato a complexidade e as varianters do assunto. Não é a toa que a maioria dos programas que se propôem a fazer isto acabam tendo algum tipo de problema. Pelo menos todos que já testei até hoje sempre recebiam alguma crítica negativa.
-
Tá ótimo Thales.
-
Conteúdo que você quer dizer é que você não gostaria que nem os nomes dos arquivos dentro da pasta sejam visíveis? Thales,na realidade gostaria que quando o usuário clicasse na pasta fosse pedida uma senha para conseguir abrí-la, ou seja, só quem tem a senha consegue abrir a pasta pelo explorer. Os nomes apareerem não tem importãncia, se não for possível trancar a pasta. O ícone da pasta você pode mudar alterando (ou criando) um arquivo chamado desktop.ini dentro da mesma, com o seguinte conteúdo: [.ShellClassInfo] Iconfile=c:\pasta\icone.ico Iconindex=0 Se o arquivo do ícone estiver dentro da própria pasta você pode omitir o caminho completo e só colocar o nome do mesmo. Abraços, Graymalkin Valeu pela dica Graymalkin!!
-
Você diz visível o ícone da pasta? É claro que o conteúdo não! Mas, o ícone poderia aparecer no explorer, qual a sua opinião? Se a pasta que não estivesse disponível mudasse de alguma forma para chamar atenção seria legal.
-
Essa eu não sabia! Quando usei este programa, muito tempo atrás antes de aprender um pouco de programação, nunca havia atentado para este problema. Será que na versão atual o problema continua?
-
É, talvez então, oThales é que tenha razão, com a sugestão dele.
-
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Valeu Thales, pela dica e paciência. Tem razão Thales, o s3c é feraça. -
Valeu pelo toque Thales Realmente s3c, uma vez vi alguém fazendo uma crítica negativa a um programa deste tipo, pelo fato de poder obter algo pelo DOS!
-
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Acho que estou voando!! Como usaria este código do s3c? -
O usuário do programa poderia trancar ou esconder uma pasta, desta forma ninguém teria acesso a ela. A propósito você baixou algum dos programas dos links? Já useo o terceiro, é o único que conheço.
-
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Micheus, Você já compilou o exemplo1. Achei ele interessante, mais ainda pelo botão novo criado ao lado do minimizar, porém ele não aparece, quando compilo o projeto e o executo. Clicando no espaço ao lado do minimizar onde ele deveria estar a ação é executada. Na unit em questão o autor queria que o programa fosse para a área de notificação. Isto acontece, porém sem o botão aparecer. Você poderia dar uma olhada? O projeto compila, mas aparecem as seguintes mensagens: O meu Delphi é o 7. -
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Muito interessante o exemplo. Inclusive ele ensina como colocar um ícone adicional ao lado do minimizar na janela. -
Micheus, Obrigado pela sugestão vou baixar.
-
Fui verificar se tinha algum ainda comigo e não achei, aí pesquisei estes: http://superdownloads.uol.com.br/download/i41695.html http://superdownloads.uol.com.br/download/i36514.html http://superdownloads.uol.com.br/download/i18933.html (Esse acima já usei é razoável, mas já vi gente metendo o pau no programa. Ele é pequeno e se não me engano é feito em C++ ; Quem fez é um programador chamado Marcos Velasco, ele tem um site e diversos programas alguns até interessantes.) Leia os comentários de algumas pessoas nas páginas acima. São todos do superdowloads
-
Thales, já vi e testei a muito tempo vários tipos: Um deles fazia a pasta sumir literalmente e para tê-la de volta apenas com senha. Alias s e não me engano tinha que ter senha para trancar a pasta e destrancar. Se não uma pessoa que usasse seu computador sairia trancando as pastas do seu computador e você estaria ferrado. Outro programa, mudava o ícone de uma pasta para outro com um ícone diferente e a pasta ficava inacessível. Só com senha. É claro que dá para fazer pois se não, não existiriam os programas mas deve ser dificil pois venho postando esa pergunta desde quando comecei a usar o delphi(2 anos) e até hoje nínguém se quer teve uma idéia de como começar a fazer, em nenhum forum. Os processos devem ser diferentes para windows diferentes, pois um programa que vi tinha versão para 98 e XP. Vou ver se me lembro onde encontrar e te passo!
-
Estou ressuscitando esta pergunta para ver se alguém tem alguma idéia. Como vocês estão vendo acima, postei a primeira vez em abril de 2006. Como de lá para cá temos muita gente experiente frequentando o forum pode ser que agora consiga obter a resposta!!
-
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Olá s3c, bom ver você de novo por aqui. Como o Thales disse no tópico acima pelo menos agora o ponteiro já vai para cima do tray. Thales como você mesmo colocou acima agora já tá bem perto. -
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Churc, acho que é muita viagem. Vou deixar isso de lado, afinal de contas não é nada de tão importante assim. -
Ponteiro Se Movimentando Sozinho. Como Fazer?
pergunta respondeu ao Paulo Nobre de Paulo Nobre em Delphi, Kylix
Thales,depois que postei fiquei pensando nisto. Mesmo achando uma maneira, o mouse iria para a bandeja e não para o ícone! Churc,a idéia seria implementar isto visando aqueles usuários com muito pouca experiência. Pois neste caso o ponteiro iria para cima do programa. Achei que mesmo ele mechendo um pouco o mouse, em algum momento ele iria parar e depois disso o ponteiro iria para cima do ícone. Mas, estou achando que viajei demais! function gettrayhandle: HWND; var hnd: HWND; begin hnd := findwindow('Shell_TrayWnd', nil); hnd := findwindowEx(hnd,0, 'TrayNotifyWnd', nil); hnd := findwindowEx(hnd,0, 'SysPager', nil); result := hnd; end; se quiser testar showwindow(gettrayhandle, sw_hide); estou sem o Delphi aqui na escola. Churc, esta função seria apenas para achar o handle da bandeja, é isto? -
Eu de novo! Tenho um programa que quando é aberto pela primeira vez mostra uma messagebox dizendo que o ícone do programa está na área de notificação (ex-tray) em fim ao lado do relógio. A messagebox está no centro com um botão ok. Gostaria de saber como fazer para quando clicar no ok o ponteiro do mouse se movimente,obviamente sozinho, até o ícone do programa que se encontra na área de notificação, . Alguém sabe o código para fazer isto?
-
Thales, mudei algumaas coisas das quais você falou. O gif paraou de dar erro, mas não captura o ponteiro o jepeg continua na mesma. Ele usa duas units que são grandes e portanto seria deselegante postar aqui. Estou mandando por email para você o projeto. OK?
-
Thales não está funcionando para Jpeg e Gif no caso da janela ativa: Veja os códigos: //Do Jpeg .... else if reg.ReadString('Capturar Ponteiro')= 'Sim' then begin if reg.ReadString('Capturar')='A tela toda' then begin //Primeiro você cria o JPEG: JPEG := TJPEGImage.Create; //Depois você carrega o bitmap do Image pelo Clipboard: Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); GetCursorPos(Pt); //Para capturar o ponteiro DrawIconEx(Image1.picture.Bitmap.Canvas.handle,pt.x,pt.y,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE);//Para capturar o ponteiro //Depois você assinala o JPEG a partir do Bitmap: JPEG.Assign(Image1.Picture.Bitmap); //Depois você salva o JPEG: JPEG.SaveToFile(FileName); JPEG.Free; end else if reg.ReadString('Capturar')= 'A janela ativa' then begin //Primeiro você cria o JPEG: JPEG := TJPEGImage.Create; //Depois você carrega o bitmap do Image pelo Clipboard: Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); GetCursorPos(Pt); //Para capturar o ponteiro GetWindowRect(GetForegroundWindow,Rt); //Para capturar o ponteiro DrawIconEx(Image1.picture.Bitmap.Canvas.handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); //Para capturar o ponteiro //Depois você assinala o JPEG a partir do Bitmap: JPEG.Assign(Image1.Picture.Bitmap); //Depois você salva o JPEG: JPEG.SaveToFile(FileName); JPEG.Free; end; end; //Do gif else if reg.ReadString('Capturar Ponteiro')= 'Sim' then begin if reg.ReadString('Capturar')='A tela toda' then begin Bitmap := TBitmap.Create; Gif:= TGifImage.Create; Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); GetCursorPos(Pt); GetWindowRect(GetForegroundWindow,Rt); DrawIconEx(image1.picture.Bitmap.Canvas.handle,pt.x,pt.y,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); BitmapToGif(Bitmap,Gif); Gif.Assign(Image1.Picture.Bitmap); Gif.SaveToFile(FileName); Bitmap.Free; Gif.Free; end else if reg.ReadString('Capturar')='A janela ativa' then begin Bitmap := TBitmap.Create; Gif:= TGifImage.Create; Image1.Picture.Bitmap.LoadFromClipboardFormat(CF_BitMap,Clipboard.GetAsHandle(CF_BitMap),0); GetCursorPos(Pt); GetWindowRect(GetForegroundWindow,Rt); GetCursorPos(Pt); //Para capturar o ponteiro GetWindowRect(GetForegroundWindow,Rt);//Para capturar o ponteiro DrawIconEx(Image1.picture.Bitmap.Canvas.handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); //Para capturar o ponteiro Gif.SaveToFile(FileName); Bitmap.Free; Gif.Free; end; end; No caso do Jpeg ele ignora o código: GetCursorPos(Pt); //Para capturar o ponteiro GetWindowRect(GetForegroundWindow,Rt); //Para capturar o ponteiro DrawIconEx(Image1.picture.Bitmap.Canvas.handle,pt.x-rt.left,pt.y-rt.top,GetCursor,0,0,0,0,DI_NORMAL or DI_DEFAULTSIZE); No building ele diz que Rt é declarada e não usada, ou seja como se ele pulasse o código e de fato pula. Coloquei um showmessage entre eles e não passa lá ele pula para JPEG.Assign(Image1.Picture.Bitmap); Muito estranho Não dá erro salva a janela ativa, mas sem o ponteiro. No caso do gif é pior dá erro. Dá uma ajuda aí!Por favor!