Artigos SharpCode

Desenvolvimento de um aplicativo em .NET – Parte 3

Olá

Nesta parte, vou criar o Banco de Dados e as tabelas necessárias para o funcionamento do sistema de artigos. Para isso, vou usar o MS SQL Server Management Studio Express (SMS) em conjunto com MS SQL Server Express (SQL).

O procedimento para criação de Banco de Dados/Tabelas é bastante simples e rápido. Quando se abre o SMS, deve-se informar em que computador o SQL está. Como vou trabalhar com tudo local, clico em OK para fazer o logon.

Untitled-1

Feito isso, abre-se a janela principal do programa. Para criar um novo Banco de Dados, é só clicar sobre o Databases (no Object Explorer) com o botão direito e depois em “New Databases”. Depois é só informar o nome e clicar em ok. Existem outras configurações que podem ser personalizadas, mas não é o foco deste artigo.

Untitled-2 

Após, vamos para a criação de uma nova tabela. O processo é semelhante a criar um banco de dados, porém agora deve-se escolher o banco de dados (que eu criei com o nome de SharpCode), e a “pasta” Tables. Clicando com o botão direito, escolhe-se a opção “New table”, como se vê na imagem abaixo.

Untitled-3

Por fim, agora é hora de criarmos os campos. Note que para o campo Id ser auto numerado, deve-se colocar a opção “Is identity” como “Yes”, como se ve na imagem abaixo.

Untitled-4

Assim, as tabelas criadas (com seus campos) foram:

Site
Id Numerico
Nome nchar(200)
URL nchar(250)
NomeResponsavel nchar(250)
EmailResponsavel nchar(250)
DataCadastro DateTime
Titulo nchar(200)

 

Artigo
Id int
Titulo nchar(250)
Texto ntext
DataCadastro datetime
DataPublicacao datetime
IdUsuario int

 

A parte de segurança vai ficar a cargo do .NET mesmo, o que simplifica o processo de aprendizado. Amanhã começa o desenvolvimento da aplicação no Visual Studio.

Abraços!

Desenvolvendo um aplicativo em .NET – Parte 2

Olá

Depois de receber comentários positivos sobre o projeto, decidi investir na ideia proposta pelo Márcio, de um sistema de artigos. Inicialmente ele será bem simples mesmo, para fins didáticos. Depois vamos acrescentando mais coisas.

A ideia de um sistema de controle de estoque é boa também, mas a didática fica comprometida, já que o sistema “basico” fica capenga e um sistema mais completo nunca fica 100% pronto.

Enfim. Inicio o software pelo projeto. Podia usar N formas de desenvolvimento, mas escolho a prototipação com algumas modificações por ser a que mostra alguma coisa pronta em pouco tempo. Dava pra usar Scrum ou Programação Extrema. Mas a didática novamente fica comprometida.

O projeto inicia com 3 tabelas apenas. A saber:

  • Site
  • Artigo
  • Usuario

Montei um diagrama E-R hiper simples, usando o software open source Dia for Windows. O software é simples e funciona bem.

Diagrama1

Sugestões e colaborações são MUITO desejadas bem vindas.

Abraços a todos!

Desenvolvendo um aplicativo em .NET

Olá

Acredito que a melhor maneira de aprender uma nova linguagem é desenvolvendo uma aplicação a partir do zero. Sendo assim, convido aos amigos para sugerir uma aplicação (algo que seja simples e didático) para desenvolver aqui.

Como vai ser: depois de escolhido o programa (através das sugestões dos comentários, até segunda dia 23/03), o programa vai ser feito em Windows Forms e em ASP.NET, usando a mesma base de dados. Tendo um retorno positivo, podemos ver o desenvolvimento para Mobile e WPF.

Abraços

Minimizando o aplicativo para a área de notificação do Windows

Alguns softwares quando são minimizados ao invés de ficarem na barra de tarefas, mostram um ícone na área de notificação do Windows, como por exemplo, o MSN Messenger e o controle de volume do computador. Para quem não sabe a área de notificação é aquela bandeja de ícones que fica ao lado do relógio na barra de tarefas do Windows, veja na figura abaixo a área de notificação do Windows 7 mostrando o controle de volume e o ícone com a indicação de bateria do notebook.

NotificationArea

Agora vamos ver como utilizar esse recurso com os nossos softwares, para o artigo vou utilizar um software fictício chamado SharpCode Chat.

Utilizei nesse artigo o Visual Studio 2008 com projetos na linguagem C# e VB.NET, clique aqui para fazer o download dos arquivos dos projetos, caso não possua o Visual Studio 2008 os códigos funcionam da mesma forma no 2005.

Crie um novo projeto do tipo Windows Application chamado SharpCode Chat, pode criar tanto em C# ou VB.NET mostrei os códigos nas duas linguagens, mude o nome do Form1 para frmSharpCodeChat, e desenhe o formulário como mostrado abaixo.

TelaInicial

Agora com o formulário desenhado, vamos arrastar para o formulário o controle responsável por mostrar o ícone do nosso aplicativo na área de notificação, na aba Commom Controls ache o controle NotifyIcon e arraste o mesmo para o formulário. O controle na Toolbox é mostrado na imagem abaixo.

Toolbox

Quando arrastamos o controle NotifyIcon para o formulário, ele é mostrado em uma barra que fica logo abaixo do formulário, a imagem do seu formulário deve ficar igual a imagem abaixo.

NotifyIcon

Agora nós podemos escolher o ícone que será mostrado na área de notificação, para isso clique no notifyIcon1 que acabamos de criar, e na janela de propriedades procure a propriedade Icon mostrada abaixo, defina nessa propriedade o ícone que será mostrado.

IconProperty

Também mude a propriedade Text do notifyIcon1 para SharpCode Chat. O valor informado na propriedade Text será mostrado em um Tooltip quando o usuário colocar o cursor do mouse sobre o ícone na área de notificação.

Agora vamos para a programação, o primeiro a fazer é esconder o nosso aplicativo quando ele for minimizado, assim ele não será mais mostrado na barra de tarefas ficará visivel para o usuário somente o ícone na área de notificação. Clique no formulário, e na janela de propriedades clique no botão de eventos, e de um duplo clique no evento Resize, veja a imagem abaixo.

Resize

O evento Resize é disparado quando nosso formulário é redimensionado, o que ocorre quando ele é minimizado, então no evento resize vamos colocar o código que quando nosso aplicativo for minimizado vamos esconde-lo. Veja abaixo o código em C# e em VB.NET.

   1: private void frmSharpCodeChat_Resize(object sender, EventArgs e)
   2: {
   3:     if (WindowState == FormWindowState.Minimized)
   4:     {
   5:         Hide();
   6:     }
   7: }
   1: Private Sub frmSharpCodeChat_Resize(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Resize
   2:     If WindowState = FormWindowState.Minimized Then
   3:         Hide()
   4:     End If
   5: End Sub

Execute o seu aplicativo e verá que o ícone será mostrado na área de notificação, caso ele não aparece verifique se ele não está configurado para ficar escondido na configuração da área de notificação, e minimize o aplicativo, verá que ele vai sumir e não aparecerá mais na barra de tarefas.

Agora volte para o design do formulário no Visual Studio, clique no controle nofifyIcon1 e na janela de propriedades, clique no botão de eventos e de um duplo clique no evento DoubleClick, nesse evento vamos fazer o aplicativo voltar ao estado normal quando o usuário der um duplo clique no ícone na área de notificação, caso queira pode implementar o código no evento Click ai com apenas 1 clique o aplicativo aparecerá novamente, segue abaixo o código que verifica se o aplicativo está minimizado, caso esteja, mostra o mesmo e volta o estado da janela para normal.

   1: private void notifyIcon1_DoubleClick(object sender, EventArgs e)
   2: {
   3:     if (WindowState == FormWindowState.Minimized)
   4:     {
   5:         Show();
   6:         WindowState = FormWindowState.Normal;
   7:     }
   8: }
   1: Private Sub NotifyIcon1_DoubleClick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles NotifyIcon1.DoubleClick
   2:     If WindowState = FormWindowState.Minimized Then
   3:         Show()
   4:         WindowState = FormWindowState.Normal
   5:     End If
   6: End Sub

 

 

 

 

 

 

 

 

 

Implementado o código do evento DoubleClick execute seu aplicativo novamente e veja o funcionamento, agora após minimizado, clicando duas vezes no ícone do aplicativo na área de notificação, o aplicativo será mostrado novamente.

Agora veremos como adicionar mais uma funcionalidade ao nosso aplicativo na área de  notificação, vamos mostrar um menu de contexto quando o usuário clicar com o botão direito do mouse no ícone, e no menu mostraremos a opção para sair do aplicativo e adicionar um novo contato.

Primeiramente crie um novo formulário chamado frmAdicionarContato e desenhe o mesmo conforme mostrado abaixo.

TelaAdicionarContato

Feito isso volte para o design do frmSharpCodeChat.

Na janela de ferramentas do Visual Studio, procure a aba Menus & Toolbars e nela o controle ContextMenuStrip. Arraste o controle para o formulário. Veja abaixo o controle na Toolbox do Visual Studio.

ToolboxNavigation

Como ocorreu com o controle NofifyIcon o controle ContextMenu ficará logo abaixo do formulário, clique nele e adicione dois items ao context menu como mostrado abaixo.

DesignContextMenu

Agora para o nosso Context Menu aparecer quando clicarmos com o botão direito, devemos informar ele na propriedade ContextMenuStrip do nosso NofityIcon.

ContextMenuStrip 

Agora de um duplo clique no item Adicionar novo contato criado no context menu e nele vamos colocar o código para mostrar o formulário de cadastro de novos contatos.

   1: private void adiToolStripMenuItem_Click(object sender, EventArgs e)
   2: {
   3:     frmAdicionarContato adicionarContato = new frmAdicionarContato();
   4:     adicionarContato.ShowDialog();
   5: }

 

   1: Private Sub AdicionarNovoContatoToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles AdicionarNovoContatoToolStripMenuItem.Click
   2:     Dim adicionarContato As New frmAdicionarContato()
   3:     adicionarContato.ShowDialog()
   4: End Sub

Feito isso, execute nosso aplicativo e clique com o botão direito do mouse no ícone na área de notificação que o context menu iriá aparecer, e clique no item como na imagem abaixo para visualizar o formulário para adicionar novos usuários.

ContextAdicionarContato

Agora o código para finalizar nosso aplicativo, de um duplo clique no item Sair do SharpCode Chat e escreva o seguinte código.

   1: private void sairDoSharpCodeChatToolStripMenuItem_Click(object sender, EventArgs e)
   2: {
   3:     Application.Exit();
   4: }

 

   1: Private Sub SairDoSharpCodeChatToolStripMenuItem_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles SairDoSharpCodeChatToolStripMenuItem.Click
   2:     Application.Exit()
   3: End Sub

Feito isso, execute nosso aplicativo e clique com o botão direito do mouse no ícone na área de notificação que o context menu iriá aparecer, e clique no item como na imagem abaixo para finalizar o aplicativo

ContextSair

Bom esse foi nosso tutorial básico de como minimizar aplicativos para a área de notificação do windows, envie dúvidas, críticas ou sugestões de artigos para marcio@sharpcode.com.br

Abraços a todos.