Você está aqui: Cards de Ética e Legislação Profissional |
||
|
||
|
|
||
Delphi ::: Dicas & Truques ::: Strings e Caracteres |
Como substituir todas as ocorrências de uma substring em uma string Delphi usando a função ReplaceStr()Quantidade de visualizações: 16960 vezes |
Algumas vezes precisamos substituir todas as ocorrências de uma substring em uma string. Em Delphi isso pode ser feito com o auxílio da função ReplaceStr(). Esta função requer a string na qual a substituição ocorrerá, a substring a ser substituída e a nova substring. O resultado será uma nova string resultante da substituição. Veja o exemplo:procedure TForm1.Button1Click(Sender: TObject); var frase: string; begin frase := 'PHP? Sim, eu gosto muito de PHP'; // vamos substituir todas as ocorrências de "PHP" por "Delphi' frase := ReplaceStr(frase, 'PHP', 'Delphi'); // vamos exibir o resultado ShowMessage(frase); end; Lembre-se de que esta função diferencia maiúsculas e minúsculas. Não se esqueça de adicionar a unit StrUtils no uses do seu formulário. Para questões de compatibilidade, esta dica foi escrita usando Delphi 2009. |
Java ::: Tratamento de Erros ::: Erros de Tempo de Execução |
Java para iniciantes - Como tratar o erro OutOfMemoryError no JavaQuantidade de visualizações: 12239 vezes |
|
O erro OutOfMemoryError é apresentado quando a Java Virtual Machine (JVM) não consegue alocar um objeto por falta de memória e o Garbagge Collector não liberou mais memória ainda. Este é um erro que não deve ser apanhado em um bloco try...catch, ou seja, se não há memória para alocar novos objetos, é fácil entender que não haverá memória para tal procedimento. O melhor a fazer é deixar o programa terminar e verificar a causa do problema. Veja a posição da classe OutOfMemoryError na hierarquia de classes da plataforma Java:
java.lang.Object
java.lang.Throwable
java.lang.Error
java.lang.VirtualMachineError
java.lang.OutOfMemoryError
Esta classe implementa a interface Serializable. Uma das causas mais comuns para o erro OutOfMemoryError é a instanciação exagerada de objetos, principalmente em laços (loops). Uma forma de aumentar a memória RAM a ser usada é definindo opções na linha de comando para o java.exe. Algumas destas opções são -Xss64k -Xoss300k -Xms4m e -Xmx10m. |
jQuery ::: Dicas & Truques ::: Atributos ou Propriedades HTML |
Como alternar a classe de um elemento HTML usando a função toggleClass() do jQueryQuantidade de visualizações: 9126 vezes |
|
O método toggleClass() do jQuery é um dos mais interessantes no framework. Este método permite aplicar um nome de classe a um elemento HTML se ele ainda não estiver definido e removê-lo se este já estiver definido para o elemento. Veja um trecho de código que altera a cor de fundo de um parágrafo a cada vez que ele é clicado. Comece analisando o trecho de estilos CSS:
<style type="text/css">
body, td {font: 70% Verdana}
.destaque {background-color: yellow}
.destaque2 {background-color: red}
</style>
Veja agora o elemento P que usaremos para ilustrar o efeito: <p id="parag" class="destaque">Sou um parágrafo</p> E finalmente o código JavaScript (na parte <head></head> da página):
<script type="text/javascript">
<!--
$(document).ready(function(){
$("#parag").click(function(){
$(this).toggleClass("destaque2");
});
});
//-->
</script>
E aqui a página HTML completa para o exemplo:
<!doctype html>
<html>
<head>
<title>Estudos jQuery</title>
<style type="text/css">
body, td {font: 70% Verdana}
.destaque {background-color: yellow}
.destaque2 {background-color: red}
</style>
<script
src="https://code.jquery.com/jquery-3.6.0.js"
integrity="sha256-H+K7U5CnXl1h5ywQfKtSj8PCmoN9aaq30gDh27Xc0jk="
crossorigin="anonymous"></script>
</head>
<body>
<p id="parag" class="destaque">Sou um parágrafo</p>
<script type="text/javascript">
$(document).ready(function(){
$("#parag").click(function(){
$(this).toggleClass("destaque2");
});
});
</script>
</body>
</html>
O método toggleClass() retorna um objeto jQuery para fins de encadeamento de chamadas de métodos. |
Portugol ::: Desafios e Lista de Exercícios Resolvidos ::: Estruturas de Controle |
Exercícios Resolvidos de Portugol - Escreva um programa que leia o ano de nascimento de um rapaz e mostre a sua situação em relação ao alistamento militarQuantidade de visualizações: 310 vezes |
|
Pergunta/Tarefa: Escreva um programa que leia o ano de nascimento de um rapaz e mostre a sua situação em relação ao alistamento militar. - Se estiver antes dos 18 anos, mostre em quantos anos faltam para o alistamento. - Se já tiver depois dos 18 anos, mostre quantos anos já se passaram do alistamento. Sua saída deverá ser parecida com: Informe o ano atual: 2025 Informe o ano do seu nascimento: 1980 Você tem 45 anos. Já se passaram 27 anos do alistamento militar. Informe o ano atual: 2025 Informe o ano do seu nascimento: 2007 Você tem 18 anos. Você já tem idade suficiente para fazer o alistamento militar. Informe o ano atual: 2025 Informe o ano do seu nascimento: 2009 Você tem 16 anos. Faltam 2 anos para você fazer o alistamento militar. Veja a resolução comentada deste exercício usando Portugol Web Studio:
programa {
funcao inicio() {
// variáveis usadas na resolução do problema
inteiro ano_nasc, ano_atual, idade, anos_faltam, anos_passaram
// vamos pedir para o usuário informar o ano atual
escreva("Informe o ano atual: ")
leia(ano_atual)
// vamos pedir para o usuário informar o ano de nascimento
escreva("Informe o ano do seu nascimento: ")
leia(ano_nasc)
// vamos calcular a idade do usuário
idade = ano_atual - ano_nasc
// vamos calcular os anos que faltam para o alistamento
anos_faltam = 18 - idade
// vamos calcular os anos que já se passaram do alistamento
anos_passaram = idade - 18
// vamos mostrar os resultados
se (idade < 18) {
escreva("\nVocê tem " + idade + " anos.")
escreva("\nFaltam " + anos_faltam +
" anos para você fazer o alistamento militar.")
}
senao se (idade == 18) {
escreva("\nVocê tem " + idade + " anos.")
escreva("\nVocê já tem idade para o alistamento militar.")
}
senao {
escreva("\nVocê tem " + idade + " anos.")
escreva("\nJá se passaram " + anos_passaram +
" anos do alistamento militar.")
}
}
}
|
C++ ::: Win32 API (Windows API) ::: Edit Control |
Como definir a cor de fundo para um Edit Control em tempo de execução usando C++ e a API do WindowsQuantidade de visualizações: 10412 vezes |
|
O processo de definir a cor de fundo para um Edit Control em tempo de execução usando apenas C++ e a API do Windows é um pouco complicado. A técnica apresentada aqui pode não ser a mais eficiente, mas funciona mesmo (testado como VC++ 2005 e Windows XP). Note que estarei usando as funções CreateSolidBrush(), GetDlgCtrlID(), SetBkMode() e SetBkColor() da WinAPI. 1 - Comece adicionando as linhas na parte de variáveis globais de sua aplicação: HBRUSH hbrushEditBox = CreateSolidBrush(RGB(255, 255, 255)); HDC hdcEdit; int id_edit_control; HWND edit_window; 2 - Modifique ou adicione um case para a mensagem WM_CTLCOLOREDIT da seguinte forma:
case WM_CTLCOLOREDIT:
hdcEdit = (HDC)wParam;
edit_window = HWND(lParam);
id_edit_control = GetDlgCtrlID(edit_window);
if(id_edit_control == IDC_EDIT1){
SetBkMode(hdcEdit, TRANSPARENT);
SetBkColor(hdcEdit,(LONG)hbrushEditBox);
return (LONG)hbrushEditBox;
}
return (LRESULT)CreateSolidBrush(RGB(255, 255, 255));
3 - A cor de fundo do Edit Control com ID IDC_EDIT1 será modificada para vermelho quando clicarmos no botão com o ID IDC_BUTTON1. Veja o case para este botão (dentro do case WM_COMMAND): case IDC_BUTTON1: // ID do botão // Define uma nova cor de fundo para o Edit Control // com o ID IDC_EDIT1 // Vermelho como cor de fundo hbrushEditBox = CreateSolidBrush(RGB(255, 0, 0)); // Atualiza o Edit Control InvalidateRect(GetDlgItem(hwnd, IDC_EDIT1), 0, TRUE); break; |
Desafios, Exercícios e Algoritmos Resolvidos de C++ |
Veja mais Dicas e truques de C++ |
Dicas e truques de outras linguagens |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |




