Java, C/C++, Python, C#, LISP, AutoLisp, AutoCAD e VBA
PHP, Python, C#, JavaScript, Laravel, Google Ads e SEO

Você está aqui: Cards de
Card 0 de 0
O filtro aplicado não retornou nenhum resultado. Clique o botão Remover Filtro ou experimente um filtro diferente.

Filtrar Cards
Use esta opção para filtrar os cards pelos tópicos que mais lhe interessam.
Termos:
Aviso Importante: Nos esforçamos muito para que o conteúdo dos cards e dos testes e conhecimento seja o mais correto possível. No entanto, entendemos que erros podem ocorrer. Caso isso aconteça, pedimos desculpas e estamos à disposição para as devidas correções. Além disso, o conteúdo aqui apresentado é fruto de conhecimento nosso e de pesquisas na internet e livros. Caso você encontre algum conteúdo que não deveria estar aqui, por favor, nos comunique pelos e-mails exibidos nas opções de contato.
Link para compartilhar na Internet ou com seus amigos:

Revit C# ::: Dicas & Truques ::: Colunas e Pilares

Como listar os tipos de colunas e pilares disponíveis no Revit usando a Revit C# API

Quantidade de visualizações: 495 vezes
Nesta dica mostrarei como podemos obter e retorna uma lista com as colunas e pilares disponíveis na sua instalação do Revit. Esse passo é muito importante quando precisamos informar o id do símbolo de família, ou seja, o tipo de coluna ou pilar que queremos criar, em um determinado momento, via programação Revit C# API.

O primeiro passo é acessar o documento atual do Revit usando uma chamada à this.ActiveUIDocument.Document. Em seguida nós obtemos um objeto FilteredElementCollector para filtrar e retornar os símbolos de família que se enquadrem na categoria OST_StructuralColumns. Para finalizar, nós convertemos os elementos Element em FamilySymbol.

Veja o código completo para o exemplo:

using System;
using Autodesk.Revit.UI;
using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Structure;
using Autodesk.Revit.UI.Selection;
using System.Collections.Generic;
using Autodesk.Revit.DB.Architecture;
using System.Linq;
 
namespace Estudos {
  [Autodesk.Revit.Attributes.Transaction(Autodesk.Revit.Attributes.
    TransactionMode.Manual)]
  [Autodesk.Revit.DB.Macros.AddInId("ED8EC6C4-9489-48F7-B04E-B45B5D1BEB12")]
  public partial class ThisApplication {
    private void Module_Startup(object sender, EventArgs e) {
      // vamos obter uma referência ao Document ativo
      Document doc = this.ActiveUIDocument.Document;
       
      // vamos obter um FilteredElementCollector contendo apenas
      // elementos que sejam ElementType e pertençam à categoria
      // OST_StructuralColumns
      try {
      FilteredElementCollector elementos = new FilteredElementCollector(doc)
        .WhereElementIsElementType().OfCategory(BuiltInCategory.OST_StructuralColumns);
  
      String lista = "";
      // vamos percorrer os elementos retornados
      foreach(Element elemento in elementos) {
        // vamos converter o Element em FamilySymbol
        FamilySymbol coluna = elemento as FamilySymbol;
        // agora montamos a lista de colunas (ou pilares)
        lista = lista + "Id: " + elemento.Id.IntegerValue + "; Nome: "
            + elemento.Name + "; Tipo: " + elemento.Category.Name +
            "; Família: " + coluna.Family.Name + "\n";
      }
   
      // mostramos o resultado
      TaskDialog.Show("Aviso", lista);
      }
      catch (Exception ex) {
        TaskDialog.Show("Aviso", "Erro: " + ex.Message);
      }
    }
      
    private void Module_Shutdown(object sender, EventArgs e) {
      // para fazer alguma limpeza de memória ou algo assim
    }
 
    #region Revit Macros generated code
    private void InternalStartup() {
      this.Startup += new System.EventHandler(Module_Startup);
      this.Shutdown += new System.EventHandler(Module_Shutdown);
    }
    #endregion
  }
}

Ao executar este código Revit C# nós teremos o seguinte resultado:

Id: 12190; Nome: UC305x305x97; Tipo: Pilares estruturais; Família: UC-Universal Columns-Column
Id: 355634; Nome: 80 x 50; Tipo: Pilares estruturais; Família: Pila de Concreto - Retangular
Id: 355636; Nome: 50 x 50; Tipo: Pilares estruturais; Família: Pila de Concreto - Retangular


wxWidgets ::: Dicas & Truques ::: wxFrame

Como usar a classe wxFrame para criar a janela principal de suas aplicações C++ wxWidgets

Quantidade de visualizações: 2286 vezes
A classe wxFrame, definida no arquivo <wx/frame.h>, herda diretamente da classe wxTopLevelWindow (que herda de wxWindow) e, em geral, é usada para representar a janela principal da aplicação. Em tempo de execução seu tamanho pode ser alterado, maximizado, restaurado e minimizado. Esta janela também inclui uma borda mais grossa, uma barra de títulos e, opcionalmente, uma barra de menus, uma barra de ferramentas ou uma barra de status.

Uma wxFrame pode atuar como um contâiner para outros controles, tais como botões, caixa de texto, listas, tabelas, etc. No entanto, não podemos inserir em uma wxFrame uma outra wxFrame ou um diálogo.

O construtor não vazio da classe wxFrame é:

wxFrame::wxFrame(wxWindow* parent, wxWindowID id,
  const wxString&  title, const wxPoint& pos = wxDefaultPosition,  
  const wxSize& size = wxDefaultSize,  
  long style = wxDEFAULT_FRAME_STYLE,
  const wxString& name = wxFrameNameStr)


O parâmetro parent pode ser, e geralmente é, NULL. Se esse valor for diferente de NULL, a frame será minimizada quando sua janela mãe foi minimizada e restaurada quando esta for restaurada. Note que estamos falando de aplicações de janelas de múltiplos documentos (janelas MDI).

O parâmetro id é o identificador da janela. Podemos informar -1 para indicar um valor default.

O parâmetro title é o texto a ser exibido na barra de títulos da janela.

O parâmetro pos é a posição da janela, expressa como um wxPoint (coordenada x e y). Se fornecermos o valor wxDefaultPosition para este parâmetro, a posição da janela será escolhida pelo sistema de janelas ou pela biblioteca wxWidgets, dependendo da plataforma.

O parâmetro size é o tamanho da janela, expresso como um wxSize (largura e altura). O valor wxDefaultSize indica o tamanho padrão (default), escolhido pelo sistema de janelas ou pela biblioteca wxWidgets, dependendo da plataforma.

O parâmetro style é o estilo da janela. O valor padrão é wxDEFAULT_FRAME_STYLE (que pode ser redimensionada, possui um botão de minimizar, de maximizar, etc).

O parâmetro name é usado para associar a janela com um item nomeado, permitindo a personalização individual da janela em sistemas que usam o Motif. No Windows este parâmetro não possui nenhum efeito.

Vamos ao código agora. Veja os arquivos de definição e de implementação para a criação de uma janela wxFrame:

Código para janelaprincipal.h:

#ifndef _JANELAPRINCIPAL_H
#define _JANELAPRINCIPAL

#include <wx/wx.h>

// Definição da nossa janela wxFrame
class JanelaPrincipal : public wxFrame{
  public:
   // construtor não vazio
   JanelaPrincipal(const wxChar *titulo, int posX, int posY, 
     int largura, int altura);

   // destrutor
   ~JanelaPrincipal();
};

#endif // _JANELAPRINCIPAL_H

Código para janelaprincipal.cpp:

#include "janelaprincipal.h"

// arquivo de implementação
JanelaPrincipal::JanelaPrincipal(const wxChar *titulo, int posX,
  int posY, int largura, int altura) : wxFrame((wxFrame *)NULL, -1,
  titulo, wxPoint(posX, posY), wxSize(largura, altura)){

  // não vamos fazer nada aqui por enquanto	 
}

JanelaPrincipal::~JanelaPrincipal(){
  // por enquanto vamos deixar o construtor vazio
}

Agora veja o arquivo de definição e de implementação necessários para a criação e exibição da nossa janela:

Código para aplicacao.h:

#include <wx/wx.h>

// arquivo de definição

// declaramos a classe application
class MinhaAplicacao : public wxApp{
public:
  // é chamado no startup da aplicação
  virtual bool OnInit();
};

// declara MinhaAplicacao& GetApp()
DECLARE_APP(MinhaAplicacao)

Código para aplicacao.cpp

#include "aplicacao.h"
#include "janelaprincipal.h"

// arquivo de implementação

// aqui o wxWidgets cria nosso objeto MinhaAplicacao e o associa
// com a função de entrada main() ou WinMain()
IMPLEMENT_APP(MinhaAplicacao)

bool MinhaAplicacao::OnInit(){
  // vamos criar nossa janela
  JanelaPrincipal *janela = new JanelaPrincipal(wxT("Cadastro"),
	50, 50, 500, 400);
  // vamos exibir a janela wxFrame
  janela->Show(TRUE);
  // essa vai ser a janela principal da aplicação
  SetTopWindow(janela);
  
  // podemos iniciar o loop de eventos
  return true;
}

Note que, para que a janela seja visível na tela, devemos fazer uma chamada ao método Show() e fornecer o valor TRUE. Esta função é definida originalmente em wxWindow. Veja também que chamamos SetTopWindow() para informar ao wxWidgets que esta é a janela principal, razão pela qual fornecemos o valor NULL para o parâmetro parent.


Java ::: Coleções (Collections) ::: ArrayList

Como excluir de uma ArrayList todos os elementos contidos em outra ArrayList ou coleção do Java usando o método removeAll()

Quantidade de visualizações: 10463 vezes
Em algumas situações pode ser útil sabermos como remover de uma ArrayList todos os elementos contidos em outra ArrayList ou coleção. Para isso podemos usar o método removeAll(), que a classe ArrayList herda da interface java.util.List.

Veja sua assinatura:

boolean removeAll(Collection<?> c)


E agora veja um exemplo de seu uso:

import java.util.ArrayList;

public class Estudos{
  public static void main(String[] args){
    // cria uma ArrayList que conterá strings
    ArrayList<String> nomes = new ArrayList<String>();

    // cria uma segunda ArrayList que conterá mais strings
    ArrayList<String> nomes2 = new ArrayList<String>();
    
    // adiciona itens na primeira lista
    nomes.add("Carlos");
    nomes.add("Maria");
    nomes.add("Fernanda");
    nomes.add("Osmar");
    nomes.add("Zacarias");    

    // adiciona itens na segunda lista
    nomes2.add("Maria");
    nomes2.add("Zacarias");    
	
    // vamos remover da primeira lista todos os elementos
    // contidos na segunda lista
    nomes.removeAll(nomes2);

    // vamos exibir o resultado
    for(int i = 0; i < nomes.size(); i++){
      System.out.println(nomes.get(i));
    } 

    System.exit(0);
  }
}



VB.NET ::: Fundamentos da Linguagem ::: Estruturas de Controle

Como usar o laço While em VB.NET

Quantidade de visualizações: 11715 vezes
Um instrução de repetição (também chamada de laço ou loop) permite que um bloco de códigos seja executado repetidamente até que uma condição seja satisfeita.

O laço While é usado quando queremos testar uma condição e, executar um bloco de código repetidamente enquanto esta condição for verdadeira. Lembre-se de que, se a condição já for falsa, o laço nunca será executado.

Veja um exemplo de laço While que nos permite exibir os números de 0 a 10:

Dim numero As Integer = 0

While numero <= 10
  Console.WriteLine(numero)
  numero += 1
End While

Veja uma nova versão deste código, desta vez contando de 10 a 0:

Dim numero As Integer = 10

While numero >= 0
  Console.WriteLine(numero)
  numero -= 1
End While

Aqui nós estamos novamente avaliando uma condição, ou seja, se o resultado da condição for True, a execução do laço continua. Se for False, o laço para. Veja um exemplo no qual a condição booleana está bem explícita:

Dim pode As Boolean = True
Dim valor As Integer = 1

While pode
  Console.WriteLine(valor)
  valor += 1

  If valor > 20 Then
    pode = False
  End If
End While



Java ::: Classes e Componentes ::: JTree

Java Swing - Como criar sua primeira JTree usando um vetor de nomes de linguagens de programação

Quantidade de visualizações: 13657 vezes
Este exemplo mostra como criar uma JTree bem simples, e que servirá de base para a criação de aplicações Java Swing mais elaboradas. Os itens da JTree são fornecidos como um vetor de objetos, de forma que cada sub-vetor constitui uma seção da árvore. Os elementos (nós) são inseridos em suas devidas posições usando uma função recursiva.

Veja o resultado na figura abaixo:



E agora o código Java completo para o exemplo:

package arquivodecodigos;

import javax.swing.*;
import java.awt.*;
import javax.swing.tree.*;
 
public class Estudos extends JFrame{
  public Estudos(){
    super("Exemplo de uma JTree simples");
     
    Object[] linguagens = {
      "Linguagens",
      new Object[]{
        "Compiladas",
        "C++",
        "Delphi"
      }, 
      new Object[]{
        "Interpretadas",
        "JavaScript",
        "Python",
        "Ruby"
      }
    };
 
    DefaultMutableTreeNode raiz = montar(linguagens);
    JTree arvore = new JTree(raiz);  
 
    Container c = getContentPane();
    c.setLayout(new FlowLayout());
             
    JScrollPane scrollPane = new JScrollPane(arvore);
    c.add(scrollPane);
         
    setSize(400, 300);
    setVisible(true);
  }
     
  public static void main(String args[]){
    Estudos app = new Estudos();
    app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
  }
 
  private DefaultMutableTreeNode montar(Object[] hier){
    DefaultMutableTreeNode no = new DefaultMutableTreeNode(hier[0]), filho;
     
    for(int i = 1; i < hier.length; i++){
      Object n_no = hier[i];
      if(n_no instanceof Object[]){ // nó possui filhos
        filho = montar((Object[])n_no);
      }
      else{
        filho = new DefaultMutableTreeNode(n_no); // folha
      }
      
      no.add(filho);
    }
 
    return(no);
  }
}



Desafios, Exercícios e Algoritmos Resolvidos de Java

Veja mais Dicas e truques de Java

Dicas e truques de outras linguagens

E-Books em PDF

E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser.

Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book
E-Book 350 Exercícios Resolvidos de Java - PDF com 500 páginas
Domine lógica de programação e a linguagem Java com o nosso E-Book 350 Exercícios Exercícios de Java, para você estudar onde e quando quiser.

Este e-book contém exercícios resolvidos abrangendo os tópicos: Java básico, matemática e estatística, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book

Linguagens Mais Populares

1º lugar: Java
2º lugar: Python
3º lugar: C#
4º lugar: PHP
5º lugar: C
6º lugar: Delphi
7º lugar: JavaScript
8º lugar: C++
9º lugar: VB.NET
10º lugar: Ruby


E-Book 650 Dicas, Truques e Exercícios Resolvidos de Python - PDF com 1.200 páginas
Domine lógica de programação e a linguagem Python com o nosso E-Book 650 Dicas, Truques e Exercícios Exercícios de Python, para você estudar onde e quando quiser. Este e-book contém dicas, truques e exercícios resolvidos abrangendo os tópicos: Python básico, matemática e estatística, banco de dados, programação dinâmica, strings e caracteres, entrada e saída, estruturas condicionais, vetores e matrizes, funções, laços, recursividade, internet, arquivos e diretórios, programação orientada a objetos e muito mais.
Ver Conteúdo do E-book Apenas R$ 32,90

Planilha Web - Planilhas e Calculadoras online para estudantes e profissionais de Engenharia Civil, Engenharia Elétrica e Engenharia Mecânica.


© 2025 Arquivo de Códigos - Todos os direitos reservados
Neste momento há 54 usuários muito felizes estudando em nosso site.