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.
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.
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.
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.
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!
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:
Montei um diagrama E-R hiper simples, usando o software open source Dia for Windows. O software é simples e funciona bem.
Sugestões e colaborações são MUITO desejadas bem vindas.
Abraços a todos!
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
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.
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.
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.
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.
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.
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.
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.
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.
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.
Agora para o nosso Context Menu aparecer quando clicarmos com o botão direito, devemos informar ele na propriedade ContextMenuStrip do nosso NofityIcon.
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.
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
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.