![]() |
|
|
Planilha de Dimensionamento de Tubulações
Hidráulicas Água Fria e Água Quente CompletaNossa planilha automática de dimensionamento de tubulações de água fria e quente é uma ferramenta desenvolvida para auxiliar engenheiros e projetistas no cálculo rápido e preciso das redes hidráulicas de edificaçoes. Por meio da inserçao de dados como vazao, diâmetro da tubulaçao, comprimento da rede, material do tubo e coeficientes hidráulicos, a planilha realiza automaticamente os cálculos necessários para verificar velocidade da água, perda de carga e dimensionamento adequado das tubulaçoes. |
||
Delphi ::: Data Access Controls (Controles de Acesso a Dados) ::: TClientDataSet |
Como tornar o TClientDataSet do Delphi somente leitura usando a propriedade ReadOnlyQuantidade de visualizações: 12367 vezes |
|
Em algumas situações gostaríamos que um TClientDataSet fosse somente leitura, ou seja, não queremos permitir inserção, atualização ou exclusão dos dados do dataset. Para isso podemos usar a propriedade ReadOnly. Se seu valor for True, os dados do TClientDataSet serão apenas para leitura. Se o valor for False, os dados podem ser modificados e/ou novos dados podem ser inseridos no dataset. O valor padrão é False. Em tempo de design a propriedade ReadOnly do TClientDataSet pode ser ajustada selecionando-se o componente no formulário e acessando o Object Inspector. Em tempo de execução esta propriedade pode ser ajustada por meio do seguinte trecho de código: procedure TForm3.Button3Click(Sender: TObject); begin // vamos tornar o TClientDataSet somente leitura ClientDataSet1.ReadOnly := True; end; Se necessário, podemos obter o valor desta propriedade em tempo de execução da seguinte forma:
procedure TForm3.Button3Click(Sender: TObject);
begin
// vamos verificar se o TClientDataSet é somente leitura
if ClientDataSet1.ReadOnly then
ShowMessage('O ClientDataSet é somente leitura')
else
ShowMessage('O ClientDataSet NÃO é somente leitura')
end;
Ao executarmos este código e clicarmos no botão teremos uma mensagem parecida com: "O ClientDataSet NÃO é somente leitura". É importante observar que se tentarmos efetuar alguma operação que modifica o conteúdo de um TClientDataSet somente leitura nós teremos uma exceção do tipo: Project Project2.exe raised exception class EDatabaseError with message 'ClientDataSet1': Cannot modify a read-only dataset'. Quando ajustamos o valor da propriedade ReadOnly para True, automaticamente a propriedade CanModify do dataset é ajustada para False. Importante: Mesmo que o valor da propriedade ReadOnly seja False, os usuários ainda podem ser impedidos de modificar os dados de um client dataset se este obtém seus dados a partir de um provider (por exemplo: TDataSetProvider). A propriedade Options do provider pode limitar se os dados podem ser editados e, se puderem, os tipos de alterações permitidos. Esta dica foi escrita e testada no Delphi 2009. |
Python ::: Dicas & Truques ::: Strings e Caracteres |
Como testar se o primeiro caractere de cada palavra em uma string Python é o único em letra maiúscula usando a função istitle()Quantidade de visualizações: 9288 vezes |
|
Nesta dica mostrarei como podemos usar a função istitle() da linguagem Python para verificar se o primeiro caractere de cada palavra em uma frase ou texto é o único caractere em letra maiúscula. Se o teste for verdadeiro o retorno é true, caso contrário o retorno é false. Veja o exemplo completo:
def main():
frase = "Gosto De Programar Em Python"
if frase.istitle():
print("O primeiro caractere de cada palavra é maiusculo")
else:
print("O teste não resultou verdadeiro")
if __name__== "__main__":
main()
Ao executar este código Python nós teremos o seguinte resultado: O primeiro caractere de cada palavra é maiusculo. |
Delphi ::: VCL - Visual Component Library ::: TListBox |
Como adicionar itens em uma ListBox do Delphi usando a função Add()Quantidade de visualizações: 14854 vezes |
Itens em uma TListBox podem ser adicionados usando-se o método Add() da propriedade Items, um objeto da classe TString. Este método aceita uma string representando o novo ítem e retorna um inteiro cujo valor é o índice do novo ítem. Veja o seguinte trecho de código:
procedure TForm1.Button1Click(Sender: TObject);
var
item: String;
begin
// vamos adicionar um item vindo de uma variável
item := 'Sou o primeiro item';
ListBox1.Items.Add(item);
// vamos adicionar outro item...desta vez um literal
ListBox1.Items.Add('Sou o segundo item');
end;
Note que neste exemplo não fizemos uso do valor inteiro retornado pelo método Add(). Caso isso seja necessário, podemos usar código parecido com:
procedure TForm1.Button1Click(Sender: TObject);
var
item: String;
indice: Integer;
begin
// vamos adicionar um item vindo de uma variável
// e obter o seu índice
item := 'Sou o primeiro item';
indice := ListBox1.Items.Add(item);
ShowMessage('O novo ítem foi inserido no índice: ' +
IntToStr(indice));
end;
É importante notar que, em uma TListBox não ordenada, ou seja, o valor de sua propriedade Sorted é false, o método Add() sempre adicionará o novo item no final da lista. Em uma lista ordenada, o item é inserido em uma posição determinada pela ordenação alfabética dos demais itens. Para fins de compatibilidade, esta dica foi escrita usando Delphi 2009. |
C# ::: Desafios e Lista de Exercícios Resolvidos ::: C# Básico |
Exercício Resolvido de C# - Como ler um número inteiro e imprimir seu sucessor e seu antecessor em C#Quantidade de visualizações: 1415 vezes |
|
Pergunta/Tarefa: Escreva um programa C# para ler um número inteiro e imprimir seu sucessor e seu antecessor. O usuário poderá informar um valor positivo ou negativo. Sua saída deverá ser parecida com: Informe um número inteiro: 16 O número informado foi: 16 O antecessor é 15 O sucessor é: 17 Veja a resolução comentada deste exercício usando C#:
using System;
namespace Estudos {
class Principal {
static void Main(string[] args) {
// vamos pedir ao usuário que informe um número inteiro
Console.Write("Informe um número inteiro: ");
int numero = Int32.Parse(Console.ReadLine());
// vamos calcular o sucessor do número informado
int sucessor = numero + 1;
// vamos calcular o antecessor do número informado
int antecessor = numero - 1;
// e agora mostramos os resultados
Console.WriteLine("O número informado foi: {0}", numero);
Console.WriteLine("O antecessor é {0}", antecessor);
Console.WriteLine("O sucessor é: {0}", sucessor);
Console.WriteLine("\nPressione uma tecla para sair...");
Console.ReadKey();
}
}
}
|
Nossas 20 dicas & truques de programação mais populares |
|
Java - Padrões de projeto para iniciantes - Como usar o padrão de projeto Singleton em suas aplicações Java PHP - Como inserir um determinado número de zeros antes de um número em PHP usando a função sprintf() |
Você também poderá gostar das dicas e truques de programação abaixo |
Nossas 20 dicas & truques de programação mais recentes |
Últimos Projetos e Códigos Fonte Liberados Para Apoiadores do Site |
|
Python - Como criar o jogo Pedra, Papel, Tesoura em Python - Jogo completo em Python com código comentado |
Últimos Exercícios Resolvidos |
E-Books em PDF |
||||
|
||||
|
||||
Linguagens Mais Populares |
||||
|
1º lugar: Java |



