-
Posts
2,982 -
Joined
ribeiro55's Achievements
-
Copiaste isto de outro sítio? 😀 Não tenho forma de testar o código no local onde me encontro, mas quando se copia o código de outro sítio tende-se, assumo, a não olhar para o detalhe, porque na nossa cabeça o bloco todo já deveria estar a funcionar. Sugiro que apagues tudo e que recomeces linha por linha, validando cada passo do resultado. Muitas vezes até descobres maneiras melhores de fazer o mesmo. Se mesmo assim não dás com a coisa, quando puder verifico.
-
Olá Isabel, O que é que já tentaste? Existem inúmeras formas de obteres o que pretendes.
-
O erro refere-se ao não fazer sentido chamar o Increment, quando o estilo que definiste para a progress bar é Marquee, porque Marquee é um estilo constante. A única forma de resolver isso é trocar o estilo de Marquee para Blocks, ou Continuous. Provavelmente foi o que fizeste sem te aperceberes pois nenhuma alteração ao teu código faria a a excepção não ser levantada. Em tom de sugestão, (não estou a testar) o teu código poderia traduzir-se por uma forma mais reduzida, como esta: Private Sub TimerCountDown_Tick(sender As Object, e As EventArgs) Handles TimerCountDown.Tick If ProgressBarSplashScreen.Value = ProgressBarSplashScreen.Maximum Then TimerCountDown.Stop() Inicio.Show() Me.Close() End If ProgressBarSplashScreen.Increment(1) LabelSplashScreen.Text = String.Format("A carregar {0}%", {ProgressBarSplashScreen.Value}) End Sub Agora, numa questão mais filosófica, fará sentido usares uma progress bar temporizada? Não estás a carregar absolutamente nada. Do ponto de vista do utilizador, eu quero ver o teu splash screen o menor tempo possível, nenhum até, de preferência. Se o estás a atrasar por motivos de branding, prefiro não ver a progressbar, a ter que rezar de todas as vezes para que o "carregamento" seja mais rápido: nunca vai ser.
-
E isso já não vem assim de trás? Faz step debug e verifica o que está na variável codigohtlm nesse momento. Não creio que o CStr esteja a fazer isso.
-
Olá PHonorato! Presumo que estejas a usar depois a string em algum tipo de renderer, como um browser? Isto porque a string, por si, não é transformada da forma que descreves só por ser "copiada" de um lado para o outro. Para que o renderer de html ignore o parsing, terás de usar entidades html para descrever o < e o >, assim: <br><br> Acho que o HttpUtility.HtmlEncode("<br><br>"), do System.Web te faz isso, mas não consigo testar agora.
-
Olá, O facto de estares a colocar um post já é meio indicador de que estás a requisitar ajuda ou opinião. Ninguém vai beneficiar de um título como "alguem me ajuda". Quanto ao problema em si, tens várias formas de fazer. O que procuras é a propriedade Enabled, e tens de a colocar false. Para chegar ao botão, não interessa se está num painel ou não. Lembra-te que Forms são classes: podes simplesmente criar um método no form alvo para o efeito, método este que pode ser invocado como qualquer método do lado do form que cria novas instâncias deste segundo.
-
O que o KTachyon te explicou está correcto. A resposta integral é: var variaveljs = "Quero apender como se faz isso"; <script>document.write(variaveljs)</script> Ambas JS, uma JS dentro de um HTML tag "script". Apenas estás a fazer um echo para a resposta, com recurso a PHP. Claro que funciona. É JS do mais Vanilla, mas não é transformar PHP em JS. No limite usas PHP para gerar JS. Qual é a dúvida, exactamente?
-
Como é que estás a fazer os INSERT? Dá um exemplo de um sítio desses onde terias de aplicar o Replace.
-
Olá! Para resolveres o teu problema, no imediato, basta que faças um replace do valor que concatenas na query, de forma a que todos os apóstrofes passem a ser dois, por exemplo: "Johnny''s horse" Um simples .Replace("'","''") Terás é outro tipo de problemas mais graves, do que apenas esse, nomeadamente injecção de SQL. Não conheço Postgres, mas terá concerteza suporte para algo semelhante a prepared statements.
-
Olá Chamuanza, O Size já tu tens na soma que estás a fazer. O membro Length do FileInfo é o tamanho do ficheiro, em bytes. Podes obter o tamanho em qualquer outra grandeza, simplesmente por dividir sucessivamente por 1024, por exemplo, para KB: Dim fi As New FileInfo("o caminho para o ficheiro") Console.WriteLine(String.Format("{0} ({1} kb)", fi.Name, Math.Round(fi.Length / 1024, 3))) Que sai algo como: 04_ERRO_1500x_00001.png (25.562 kb)
-
Olá Gnrtuga, São Stream Readers. Depende sempre do ficheiro que queres abrir, mas deves começar sempre por deixar o reader "adivinhar" através do formato do ficheiro. Experimenta de uma das duas formas: StreamReader sr = new StreamReader("", true); // ou StreamReader sr = new StreamReader("", Encoding.Default); Ao estares a forçar um encoding, vais provocar potenciais "?" ou pior. O encoding deve ser forçado apenas quando tens a certeza dele, ou precisas de executar uma tarefa específica.
-
Esse "MediaPlayer" não é o mesmo "MediaPlayer" que está em questão. O exemplo que te dei refere-se ao componente COM (https://msdn.microsoft.com/en-us/library/windows/desktop/dd562851(v=vs.85).aspx) Aquele que encontraste refere-se a um (vá.. ) wrapper do DirectX, a XNA Framework. Não é isso que queres.
-
Não é bem assim. O Spotify despeja muito, MUITO lixo até. Normalmente é feito um cache de algumas músicas para a frente e para trás. A pasta que ele usa para guardar dados chega-me a ocupar 5GB. Vê por ti na Users\teu_user\Appdata\Local\Spotify Não há truques de magia. Streaming não é nada mais do que um download assíncrono e leitura parcial, mas download de qualquer maneira. O que quis dizer é que não precisas de fazer streaming "per se" para que a PAP tenha valor. O teu cliente pode empregar algumas técnicas como o download de duas ou três músicas para a frente e para trás, que vai apagando, para que consigas melhor performance nas ações previsíveis (andar uma música para trás e outra para a frente). No caso de uma ação impossível de prever, como o user selecionar uma música da lista ao acaso, fazes simplesmente o download antes de a começar a bombar, e novamente o cache assíncrono de duas ou três para a frente ou para trás. Alternativamente, se servires os teus ficheiros via HTTP, por exemplo, podes usar o endereço diretamente no COM Windows Media Player, propriedade URL, que acho que faz streaming (mesmo streaming) sem que te tenhas de chatear.
-
Olá nunomonteiro123, O que é que não estás a conseguir ao certo na adição de dados à base de dados? Para o que a PAP representa, não precisas de implementar o conceito de "stream", propriamente dito. Algo tão simples como a tua aplicação fazer download do ficheiro todo antes de a tocar já serve o propósito e torna-se muito mais simples. Vou assumir que por Windows Media Player te estás a referir ao controlo COM do Windows Media Player que podes adicionar ao teu form. Mesmo adicionando ao forma através da Toolbox é possível retirar a interface com uiMode = "invisible", e ficas sem rigorosamente nada na parte visual. Também podes fazê-lo sem adicionar nada por a toolbox: WMPLib.WindowsMediaPlayer wmp = new WMPLib.WindowsMediaPlayer(); wmp.URL = @"C:\Windows\media\Ring05.wav"; wmp.controls.play(); É possível usar todos os controlos do player programáticamente, e até te permite colocar caminhos no protocolo HTTP no URL, o que acrescenta mais possibilidades à tua solução. Terás de pensar antes em como vais "alojar" as músicas, para depois decidir como as servir. Explora essa parte e partimos daí para o resto.
