1. Šta je paleta komandi?

Paleta komandi je skup kontrola, najčešće dugmadi (button), koje korisniku omogućavaju brzo izvršavanje određenih operacija u aplikaciji. Ova paleta obično sadrži komande za izvršavanje često korišćenih operacija, kao što su snimanja, otvaranja fajlova, kopiranja, lepljenja itd.

Paleta komandi omogućava korisnicima da brzo pristupe funkcijama aplikacije bez potrebe za pretragom kroz menije.

Primeri paleta komandi:
  • Toolbar: Pruža skup dugmadi za brze operacije, kao što su snimanje ili štampanje dokumenata.
  • Context Menu: Prikazuje se kada se desnim klikom pritisne na element i sadrži komande relevantne za taj element.

2. Paleta komandi u Windows Forms aplikacijama

U Windows Forms aplikacijama, paleta komandi se može kreirati pomoću ToolStrip kontrole. ToolStrip predstavlja kontrolu koja omogućava dodavanje različitih elemenata poput dugmadi, padajućih menija, tekstualnih polja i separatora na jednu traku.

Neke glavne komponente ToolStrip-a:
  • ToolStripButton: Dugme koje korisnik može kliknuti da bi izvršio određenu akciju.
  • ToolStripSeparator: Separator između dugmadi, koji vizualno deli komande.
  • ToolStripTextBox: Tekstualno polje unutar ToolStrip-a za unos podataka.
  • ToolStripDropDownButton: Dugme koje prikazuje listu opcija kada se klikne.

3. Kreiranje palete komandi:

  •  preuzimanjem kontrole ToolStrip iz Toolbox-a:
  1. Pokrenuti Visual Studio: Kreirati novi Windows Forms projekat.
  2. Dodati ToolStrip kontrolu: U dizajneru forme prevući ToolStrip iz Toolbox-a na formu.
  3. Dodati dugmiće: Dodati ToolStripButton kontrole na ToolStrip  (npr. „New“, „Open“, „Save“)

Primer za rad po video sminku:

  •  programski (direktnim kucanjem koda):

Opciono, ne moraju se ubacivati kontrole iz Toolbox-a, već mogu da se dodaju programski (kuca se kod). U nastavku su dva takva primera, ali sakriveni iza dugmića:

Prvi primer - ako se radi samo iz programskog koda

 

Primer br.1:

using System;
using System.Windows.Forms;

namespace CommandPaletteExample
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
// Kreiraj ToolStrip
ToolStrip toolStrip = new ToolStrip();

// Kreiraj dugme za "Novi"
ToolStripButton btnNew = new ToolStripButton("Novi");
btnNew.Click += BtnNew_Click;

// Kreiraj dugme za "Otvori"
ToolStripButton btnOpen = new ToolStripButton("Otvori");
btnOpen.Click += BtnOpen_Click;

// Kreiraj dugme za "Snimanje"
ToolStripButton btnSave = new ToolStripButton("Snimanje");
btnSave.Click += BtnSave_Click;

// Dodaj dugmad u ToolStrip
toolStrip.Items.Add(btnNew);
toolStrip.Items.Add(btnOpen);
toolStrip.Items.Add(btnSave);

// Dodaj ToolStrip na formu
this.Controls.Add(toolStrip);
}

// Metoda za događaj klika na "Novi"
private void BtnNew_Click(object sender, EventArgs e)
{
MessageBox.Show("Kreiran je novi dokument!");
}

// Metoda za događaj klika na "Otvori"
private void BtnOpen_Click(object sender, EventArgs e)
{
MessageBox.Show("Otvaranje dokumenta...");
}

// Metoda za događaj klika na "Snimanje"
private void BtnSave_Click(object sender, EventArgs e)
{
MessageBox.Show("Snimanje dokumenta...");
}
}
}
Objašnjenje koda:
  • ToolStripButton: Svako dugme na traci komandi se kreira kao instanca klase ToolStripButton i može imati pridruženi događaj (Click) koji definiše ponašanje pri kliku na dugme.
  • this.Controls.Add(toolStrip): ToolStrip se dodaje u kolekciju kontrola na formi kako bi postao vidljiv i interaktivan.

Drugi primer - ako se radi samo iz programskog koda

 

Primer br.2:

using System;
using System.Windows.Forms;

namespace CommandPaletteExample
{
public partial class MainForm : Form
{
public MainForm()
{
InitializeComponent();
InitializeToolStrip();
}

private void InitializeToolStrip()
{
// Kreiranje ToolStrip dugmadi
ToolStripButton saveButton = new ToolStripButton();
saveButton.Text = "Snimi";
saveButton.Click += new EventHandler(SaveButton_Click);
toolStrip1.Items.Add(saveButton);

ToolStripButton openButton = new ToolStripButton();
openButton.Text = "Otvori";
openButton.Click += new EventHandler(OpenButton_Click);
toolStrip1.Items.Add(openButton);

ToolStripSeparator separator = new ToolStripSeparator();
toolStrip1.Items.Add(separator);

ToolStripButton exitButton = new ToolStripButton();
exitButton.Text = "Izlaz";
exitButton.Click += new EventHandler(ExitButton_Click);
toolStrip1.Items.Add(exitButton);
}

private void SaveButton_Click(object sender, EventArgs e)
{
MessageBox.Show("Fajl je sačuvan!");
}

private void OpenButton_Click(object sender, EventArgs e)
{
MessageBox.Show("Fajl je otvoren!");
}

private void ExitButton_Click(object sender, EventArgs e)
{
this.Close();
}
}
}

Objašnjenje koda:

  • ToolStripButton: Svako dugme se kreira i dodaje u ToolStrip.
  • EventHandler: Prikazuje poruku kada se dugme pritisne (snimi, otvori ili izlaz).
  • ToolStripSeparator: Razdvaja dugmad za bolju organizaciju.

...


4. Neke od opcija:

dodavanje ikona na dugmad

Da bi paleta komandi bila vizuelno intuitivnija, mogu se dodati ikonice:

  • ili postavljanjem svojstva Image za svako dugme kroz Property deo
  • ili programski (kucanjem koda) -
    ToolStripButton btnNew = new ToolStripButton();
    btnNew.Image = Image.FromFile("path_to_icon.png");
    btnNew.ToolTipText = "Kreiraj novi dokument";

Važno: Ikone bi trebalo da budu male i optimizovane za ToolStrip, obično veličine 16x16 piksela.

pozicioniranje
  • Dock: da se „prilepi“ na vrh, dno, levo ili desno u okviru forme (može i celom površinom forme - ako neko baš hoće).

 

S obzirom da ćemo koristiti u daljem radu samo preuzimanje kontrole iz ToolBox-a, u nastavku je u kratkim tezama naveden postupak:

Kako dodati Toolbar u Windows Forms aplikaciju
  1. Otvoriti Visual Studio i svoj Windows Forms projekat.

  2. Dodati ToolBar kontrolu:

    • U Toolbox prozoru, pronaći kontrolu ToolStrip (to je kontrola za toolbar).
    • Prevući ToolStrip na formu.
  3. Dodati dugmiće na ToolBar:

    • Desni klik na ToolStrip -> Add Button (Dodaj dugme).
    • Dodati željena dugmad i postaviti im svojstva, kao što su Text (tekst) i Image (ikona), da bi se korisnicima olakšala identifikacija funkcija.
  4. Kreiranje događaja (event handlers):

    • U cilju dodavanja funkcionalnost dugmiíma, desni klikni na dugme -> Properties.
    • Pronaí ikonu munje (događaji) i dvoklik na Click događaj da bi se u kodu kreirala metoda.
  5. Pisanje koda za događaje:

    • U metodi koja je kreirana treba dodati kod koji definiše šta se dešava kada korisnik klikne na dugme.
    • Na primer:
      private void saveButton_Click(object sender, EventArgs e)
      {
      MessageBox.Show("File saved!");
      }

Last modified: Tuesday, 2 December 2025, 5:45 AM