示例#1
0
 private void crearColaToolStripMenuItem_Click(object sender, EventArgs e)
 {
     NuevaCola.ShowDialog();
     if (NuevaCola.crear)
     {
         TabPage newTab;
         QNew = new BinomialQueue();
         if (NuevaCola.isMin)
         {
             newTab = new TabPage("Cola " + PageCounter.ToString() + " (Min)");
             QNew.isMin = true;
         }
         else
         {
             newTab = new TabPage("Cola " + PageCounter.ToString() + " (Max)");
             QNew.isMin = false;
         }
         QueueList.Add(QNew);
         PageControl.TabPages.Add(newTab);
         PageControl.SelectedTab = newTab;
         HabilitarBotones(NuevaCola.isMin);
         PageControl.Visible = true;
         Pizarra.Visible = true;
         PageCounter++;
     }
 }
示例#2
0
        private void unirColasToolStripMenuItem_Click(object sender, EventArgs e)
        {
            UnirColas.Refresh(QueueList);
            UnirColas.ShowDialog();

            if (UnirColas.crear)
            {
                if (QueueList[UnirColas.Queue1Index].isMin == QueueList[UnirColas.Queue2Index].isMin)
                {
                    TabPage newTab;
                    QNew = new BinomialQueue();
                    QNew.isMin = QueueList[UnirColas.Queue1Index].isMin;
                    QueueList.Add(QNew);
                    Q1 = QueueList[UnirColas.Queue1Index];
                    Q2 = QueueList[UnirColas.Queue2Index];
                    newTab = new TabPage("Cola " + PageCounter.ToString() + "(" + (UnirColas.Queue1Index + 1).ToString() + " + " + (UnirColas.Queue2Index + 1).ToString() + ")");
                    PageControl.TabPages.Add(newTab);
                    PageControl.SelectedTab = newTab;
                    PageCounter++;
                    QNew.UnirColas(QNew, QueueList[UnirColas.Queue1Index], QueueList[UnirColas.Queue2Index], G);
                }
            }
        }
示例#3
0
 public void UnirColas(BinomialQueue cdestino, BinomialQueue c1, BinomialQueue c2, Graphics g)
 {
     foreach (BinomialTree a1 in c1.arboles)
     {
         a1.nodohermano = null;
         cdestino.arboles.Add(a1);
         cdestino.Dibujar(g, 0, 0);
         Thread.Sleep(Tiempo / 2);
     }
     foreach (BinomialTree a2 in c2.arboles)
     {
         a2.nodohermano = null;
         cdestino.arboles.Add(a2);
         cdestino.Dibujar(g, 0, 0);
         Thread.Sleep(Tiempo / 2);
     }
     cdestino.ActualizarCola(g);
 }