-
Total de itens
8.257 -
Registro em
-
Última visita
Tudo que Graymalkin postou
-
Existe uma função da API do Windows chamada ShellExecute que faz isso. Dê uma pesquisada sobre ela. Abraços, Graymalkin
-
Se você está executando dentro do Delphi, esse é o normal (aparecer primeiro a exceção do Delphi e depois executar o tratamento que você escreveu). Após compilado e executado diretamente (fora do ambiente do Delphi) você só verá o resultado do tratamento. Abraços, Graymalkin
-
Dê uma olhada neste artigo/tutorial: http://www.desenvolvedores.net/modules.php...=article&sid=27 Abraços, Graymalkin
-
Utilize o evento SelChange para isso. Segue um exemplo abaixo: Private Sub Grade_SelChange() If Grade.Row > Grade.RowSel Then inicio = Grade.RowSel fim = Grade.Row Else inicio = Grade.Row fim = Grade.RowSel End If For i = inicio To fim soma = soma + Int(Grade.TextMatrix(i, Grade.Col)) Next i Label1.Caption = soma End Sub Note que o nome do flexgrid no exemplo acima é "Grade". Abraços, Graymalkin
-
Aí vai um exemplo simples: Dim figura As New Bitmap("c:\figura.jpg") Dim pedaço As Bitmap = figura.Clone(New Rectangle(10, 10, 20, 20), Drawing.Imaging.PixelFormat.DontCare) pedaço.Save("c:\teste.jpg") Note que os dois primeiros 10 são as posições iniciais (x e y) e os dois 20 é o tamanho da figura (altura e largura) que deve ser copiado. Abraços, Graymalkin
-
Onde você achou estes componentes? E, por que você precisa de um array de componentes? Fazer com que todos eles executem o mesmo evento não serve? Fica praticamente do mesmo jeito que um array de controles. Abraços, Graymalkin
-
Os campos têm tamanhos fixos? Ou existe algum caracter indicador que identifique onde um dado acaba e outro começa? Abraços, Graymalkin
-
Transforme os dados (Recordsets) em arquivos XML e depois envie estes por Winsock. Do outro lado basta fazer o inverso (transformar o XML em um Recordset). O ADO já tem métodos para isso (salvar e abrir recordsets em XMLs). Já fiz um esquema muito parecido com esse seu, sendo a única diferença no banco de dados (no meu caso era Access, e a idéia era fazer com que o Access funcionasse como um SQL-Server, ou seja, através de conexões pela rede ao invés de acesso direto ao arquivo MDB). Abraços, Graymalkin
-
Sim, tentei... mas também não consegui... . Mas vou dar uma tentada de novo depois. Abraços, Graymalkin
-
Já tem um tópico aqui mesmo no fórum de .NET sobre isso. Dê uma procurada. Abraços, Graymalkin
-
Aí vai: VB.NET: Dim figura As New Bitmap(PictureBox1.Image) Dim cor As Color = figura.GetPixel(10, 10) Debug.WriteLine(cor) C#: Bitmap figura = new Bitmap(PictureBox1.Image); Color cor = figura.GetPixel(10, 10); System.Console.WriteLine(cor); Certo? Graymalkin
-
Caminho De Atalho Nos Win Nt, 2000 E Xp
pergunta respondeu ao luiz.velasco de Graymalkin em Visual Basic
Sim, você pode obter isso com a função SHGetSpecialFolderLocation da API Win32. No API-Guide (http://www.mentalis.org/) tem um exemplo dela. Abraços, Graymalkin -
Dê uma olhada nisso: VB.NET: Dim pastaWindows As String = System.IO.Directory.GetParent(Environment.GetFolderPath(Environment.SpecialFolder.System)).FullName MsgBox(pastaWindows) C#: string pastaWindows = System.IO.Directory.GetParent(System.Environment.GetFolderPath(System.Environment.SpecialFolder.System)).FullName; System.Console.WriteLine(pastaWindows); Abraços, Graymalkin
-
Você pode esconder ela fazendo: MSFlexGrid1.ColWidth(n) = 0 Onde "n" é o índice da coluna (que começa por 0). Abraços, Graymalkin
-
Sim, eu fiz o Ensino Médio (2º Grau) de Técnico em Informática. Porém, como a lei tinha mudado no mesmo ano que comecei, tive também todas as matérias de Formação Geral junto com as matérias técnicas. Abraços, Graymalkin
-
mas isso não apagaria o sistema do hd Não, isso apenas reescreve o MBR com o seu conteúdo original. Abraços, Graymalkin
-
Ah tá, é isso aí mesmo então. Eu aprendi isso aí quando se falou de portas lógicas (no 2º Grau) e depois em Matemática, quando se falou de Lógica (ou Álgebra de Boole). Abraços, Graymalkin
-
Se o vírus estiver no MBR mesmo basta você fazer: fdisk /mbr Isso, é claro, ao iniciar o computador com um disquete de boot que contenha o fdisk. Abraços, Graymalkin
-
Você tem certeza de que esse efeito é realmente causado pelo VB? Tenho o Corel12 aqui e utilizo o VB a maior parte do tempo e nunca tive esse tipo de problema. Abraços, Graymalkin
-
Para você mesmo Não, não conheço algo com esse nome ("lógica digital"). Haveria algum outro nome para isso? Abraços, Graymalkin
-
O ideal é você estar em na shell para fazer isso. Procure algum ícone com o nome de "Console" ou "Command Shell" ou algo similar para isso. Abraços, Graymalkin
-
Dê uma olhada neste tópico: http://scriptbrasil.com.br/forum/index.php?showtopic=41236 Abraços, Graymalkin
-
Boa dica, apesar de que eu seja contra tais ações (bloquear recursos do sistema operacional, ainda por cima os mais úteis). Abraços, Graymalkin
-
Não testei aqui, mas experimente: sql = "Select * FROM Documentos WHERE IsNull(DATA_DOC)" Abraços, Graymalkin
-
Pretendo ser... Obrigado e de nada. Sim, a utilização de tais expressões possuem situações específicas (não tão gerais, pelo menos no dia-a-dia, quanto as operações aritméticas, como você citou). Uma situação dessas é quando você possui um campo "flag". Um campo "flag" (do inglês, "bandeira") é utilizado para sinalizar algo (esse "algo" você pode imaginar como "opções" a serem habilitadas ou desabilitadas). Olhemos agora um número binário arbitrário: 1011100 O que você vê? Uma sequência de 0s e 1s, você poderá pensar. E sim, de fato é isso. Mas, a principal característica de um número binário é justamente o fato de que só existem dois valores possíveis (ou 0 ou 1). Como já vimos antes, esse 0 pode ser chamado de FALSO e o 1 pode ser chamado de VERDADEIRO (na lógica formal), mas não podemos atribuir novos significados a eles? Sim, claro que podemos: chamemos 0 de DESLIGADO e 1 de LIGADO. O que temos agora? Uma sequência de "interruptores" (sim, interruptores como os que você usa para ligar a lâmpada do seu quarto ou da sua sala). Na sequência acima o primeiro bit está DESLIGADO (estou começando da direita para a esquerda) e o último bit está LIGADO. Note que estou chamando os bits pela ordem, porém formalmente o primeiro bit é chamado de bit0 e assim por diante (sempre començando do 0). No caso aqui estarei começando sempre por 1 (primeiro), pois fica mais fácil de se visualizar. Então, como posso saber se o terceiro bit está ligado ou desligado? Através de uma operação de AND: 1011100 AND 0000100 = 0000100 Como a operação de AND só vai retornar 1 se ambos os valores forem 1, ao realizar a operação com o valor binário 100 eu sei que se o resultado final for o próprio valor é porque esse bit está ligado. Se eu fizesse: 1011100 AND 0000010 = 0000000 O resultado final seria 0, e eu saberia que o 2º bit está desligado. Mais um exemplo: 1011100 AND 0001000 = 0001000 O resultado final bate com o valor testado, por isso eu sei que o quarto bit está ligado. Entendido? Agora, voltemos aos números decimais. Aquela sequência arbitrária é o valor 92 em decimal. Se eu quisesse saber quais bits estão ligados ou desligados, bastaria que eu fizesse os testes: 92 AND 1 = 0 92 AND 2 = 0 92 AND 4 = 4 92 AND 8 = 8 92 AND 16 = 16 92 AND 32 = 0 92 AND 64 = 64 Note que os resultados *só* são diferentes de 0 nos bits cujo valor é 1 (terceiro, quarto, quinto e sétimo bits). Por que 1, 2, 4, 8, 16, 32 e 64? Veja a tabela abaixo: 1 = 0000001 2 = 0000010 4 = 0000100 8 = 0001000 16 = 0010000 32 = 0100000 64 = 1000000 As potências de 2 são os valores mais utilizados em operações binárias porque são compostos por apenas um bit ligado e em uma posição específica. Voltemos agora ao caso de um campo "flag". Como eu disse antes, um campo "flag" sinaliza algo e podemos encarar um valor binário como uma sequência de "interruptores". Por isso, *no mínimo* aí (para o valor 92) temos 7 "opções" (a quantidade de bits do valor 92) que podemos desligar e ligar (imagine um painel com 7 interruptores e 7 lâmpadas correspondentes). Porém, nada impede ainda que combinações de interruptores possam também ter efeitos específicos (ao ligar dois determinados interruptores uma determinada lâmpada pode piscar rapidamente; ao ligar determinados três interruptores uma determinada lâmpada pode piscar lentamente; e assim por diante). Como temos 7 bits possíveis sendo que cada um pode assumir 2 valores (0 ou 1), o total de combinações possíveis é: 2^7 (2 elevado à 7ª potência), o que resulta em 128 combinações! Veja que coisa magnífica: com apenas um valor (92) eu posso representar 128 situações diferentes! Listar todas elas aqui seria extremamente exaustivo (e totalmente desnecessário), por isso vou colocar apenas alguns exemplos: valor = 92 if valor and 1 = 1 then 'Se o primeiro bit estiver ligado nome = "Julian" else 'Se o primeiro bit estiver desligado nome = "Junior" endif if valor and 2 = 2 then 'Se o segundo bit estiver ligado nome = "Remy" else 'Se o segundo bit estiver desligado nome = "Logan" endif if valor and 4 = 4 then 'Se o terceiro bit estiver ligado nome = "Scott" else 'Se o terceiro bit estiver desligado nome = "Alex" endif if (valor and 2 = 2) and (valor and 4 = 4) then 'Se o segundo e o terceiro bits estiverem ligados SIMULTANEAMENTE nome = "Warren" else 'Se o segundo OU o terceiro bits (ou ambos) estiverem desligados nome = "Henry" endif if (valor and 2 = 2) or (valor and 8 = 8) then 'Se o segundo OU o quarto bits (ou ambos) estiverem ligados nome = "Piotr" else 'Se o segundo E o quarto bits estiverem desligados nome = "Robert" endif Note que nos dois últimos Ifs eu demonstrei como pode-se combinar, de forma simples, os resultados a fim de obter outras possibilidades (muitas outras combinações podem ser utilizadas). Note que até agora só utilizei o AND para explicar o caso, mas o operador OR também é extremamente útil no caso. Mais precisamente, o AND serve para *testar* e o OR serve para *definir*. Se quiser ligar os três primeiros bits, eu posso simplesmente fazer: valor2 = 1 or 2 or 4 Como sabemos o resultado de 1 OR 2 OR 4 vai ser 7 e que o valor binário de 7 é 111. Para as potências de 2 aquela idéia de somar vai ser sempre verdadeira, por isso o resultado acima seria o mesmo que: valor2 = 1 + 2 + 4 Sabendo isso, como eu poderia saber se dois bits estão ligados simultaneamente de uma forma mais prática do que a que utilizei nos exemplos acima? Veja abaixo: valor = 92 valor2 = 4 or 8 'que é o mesmo que 4+8, ou seja, 12 if valor and valor2 = valor2 then 'o terceiro E o quarto bits estão ligados else 'o terceiro OU o quarto bits (ou ambos) estão desligados endif Apesar de não utilizarmos extensivamente essas operações na programação do dia-a-dia, é possível citar alguns exemplos: tags de arquivos MP3, onde várias informações sobre as informações contidas dentro do arquivo são expostas em flags; a propriedade Flags do controle CommonDialog (bastante utilizado no VB) que possui várias opções "extras" que podem ser ativadas; e a criptografia (na qual se utiliza o operador XOR, o "OU eXclusivo"). Esses são exemplos que imaginei agora, mas devem haver outros. É interessante também salientar que as operações lógicas estão ocorrendo o tempo todo e de forma intensa no seu computador (e em milhares de outros equipamentos eletrônicos). Calculadoras, por exemplo, fazem a operação de "soma" através do operador OR. Seu computador sabe que você apertou uma tecla enquanto segurava o SHIFT, o ALT ou o CONTROL através de um bit que é alterado nesses casos (o que pode ser testado com um AND). Seu computador só está recebendo dados da internet no momento (e é capaz de se comunicar com outros computadores em uma rede local) devido a uma operação de AND que é realizada entre o endereço IP de destino e a sub-máscara. Para uma computador acessar um determinado site ou serviço na grande teia mundial, seus dados irão trafegar por vários roteadores que estarão realizando operações de AND a fim de decidir para onde irão enviar os dados. Discos rígidos e softwares implementam "espelhamentos" ou "sombreamentos" (que é ter uma cópia dos dados de um disco em outro, de forma quase simultânea) guardando apenas determinados bits em um disco e em outro, de forma a reconstituir os bits faltantes (através das operações lógicas AND e OR) caso um dos discos pare de funcionar. Magnífico esse nosso mundo de bits e bytes, não? Nossa, me empolguei e escrevi muito... Espero que você tenha paciência para ler até o final. Abraços, Graymalkin