예제 #1
0
        private void OANueva_Click(object sender, EventArgs e)
        {
            FormOrganizacion dlgOrg = new FormOrganizacion();
            FormOrganizacionSec orgSec;
            FormOrgSecInd orgSecInd;
            ArbolBplus arbol;
            FOrgHashEstatica orgHashEstatica;
            FOrgHashDinamica orgHashDinamica;
            CArchivo aO, aC;
            
            aO = aC = null;

            if (dlgOrg.ShowDialog() == DialogResult.OK)
            {
                aO = new CArchivo(dlgOrg.tbNameDicc.Text);
                aC = new CArchivo(dlgOrg.tbNameDiccOrg.Text);
               
                creaCopia(aO, aC);
               
                switch (dlgOrg.getTipoOrg())
                {
                    case 0://Organizacion secuencial
                        orgSec = new FormOrganizacionSec();
                        orgSec.setArchivo(aC);
                        orgSec.setTipoOrg(1);
                        orgSec.Text = "Organizacion " + (string)dlgOrg.cbOrg.SelectedItem;
                        orgSec.MdiParent = this;
                        orgSec.Show();
                    break;
                    case 1://Organizacion secuencial indexada
                        orgSecInd = new FormOrgSecInd();
                        orgSecInd.MdiParent = this;
                        orgSecInd.setArchivo(aC);
                        orgSecInd.setTipoOrg(2);
                        orgSecInd.Text = "Organizacion " + (string)dlgOrg.cbOrg.SelectedItem;
                        orgSecInd.Show();
                    break;
                    case 2://Organizacion Secuencial indexada implementada con Arboles B+
                        arbol = new ArbolBplus();
                        arbol.MdiParent = this;
                        arbol.setArchivo(aC);
                        arbol.setTipoOrg(3);
                        arbol.Text = "Organizacion " + (string)dlgOrg.cbOrg.SelectedItem;
                        arbol.Show();
                    break;
                    case 3://Oganizacion Hash Estatica
                        orgHashEstatica = new FOrgHashEstatica();
                        orgHashEstatica.MdiParent = this;
                        orgHashEstatica.setArchivo(aC);
                        orgHashEstatica.setTipoOrg(4);
                        orgHashEstatica.Text = "Organizacion " + (string)dlgOrg.cbOrg.SelectedItem;
                        orgHashEstatica.Show();
                    break;
                    case 4://Organizacion Hash Dinámica
                        orgHashDinamica = new FOrgHashDinamica();
                        orgHashDinamica.MdiParent = this;
                        orgHashDinamica.setArchivo(aC);
                        orgHashDinamica.setTipoOrg(5);
                        orgHashDinamica.Text = "Organizacion " + (string)dlgOrg.cbOrg.SelectedItem;
                        orgHashDinamica.Show();
                    break;
                }
            }
        }
예제 #2
0
        private void OA_Abrir_Click(object sender, EventArgs e)
        {
            OpenFileDialog openFile = new OpenFileDialog();
            FormOrganizacionSec orgSec;
            FormOrgSecInd orgSecInd;
            ArbolBplus arbol;
            FOrgHashEstatica orgHashStatic;
            FOrgHashDinamica orgHashDinamica;
            CArchivo archivo;
            string name;

            openFile.Filter = "Organizacion secuencial|*.sec|"+
                              "Secuencial Indexada|*.osi|"+
                              "Arbol B+|*.bPlus|"+
                              "Hash Estatica|*.hashe|"+
                              "Hash Dinámica|*.hashd";
            
            if( openFile.ShowDialog() == DialogResult.OK)
            {
                name = openFile.FileName;

                switch (openFile.FilterIndex)
                {
                    case 1: //Organizacion secuecial
                        archivo = new CArchivo(name);
                        orgSec = new FormOrganizacionSec();
                        orgSec.setArchivo(archivo);
                        orgSec.setTipoOrg(1);
                        orgSec.Text = "Organizacion Secuencial - " + openFile.SafeFileName.Substring(0,openFile.SafeFileName.Length-4);
                        orgSec.MdiParent = this;
                        orgSec.Show();
                    break;
                    case 2: //Organizacion secuencial indexada
                        archivo = new CArchivo(name);
                        orgSecInd = new FormOrgSecInd();
                        orgSecInd.setArchivo(archivo);
                        orgSecInd.setTipoOrg(2);
                        orgSecInd.Text = "Organizacion Secuencial Idexada - " + openFile.SafeFileName.Substring(0, openFile.SafeFileName.Length - 4); ;
                        orgSecInd.MdiParent = this;
                        orgSecInd.Show();
                    break;
                    case 3://Organizacion Secuencial Indexada con Arboles B+
                        archivo = new CArchivo(name);
                        arbol = new ArbolBplus();
                        arbol.setArchivo(archivo);
                        arbol.setTipoOrg(3);
                        arbol.Text = "Organizacion Secuencial Idexada con Arboles B+ - " + openFile.SafeFileName.Substring(0, openFile.SafeFileName.Length - 6);
                        arbol.MdiParent = this;
                        arbol.Show();
                    break;
                    case 4:
                        archivo = new CArchivo(name);
                        orgHashStatic = new FOrgHashEstatica();
                        orgHashStatic.setArchivo(archivo);
                        orgHashStatic.setTipoOrg(4);
                        orgHashStatic.Text = "Organizacion Hash Estatica - " + openFile.SafeFileName.Substring(0, openFile.SafeFileName.Length - 6);
                        orgHashStatic.MdiParent = this;
                        orgHashStatic.Show();
                    break;
                    case 5:
                        archivo = new CArchivo(name);
                        orgHashDinamica = new FOrgHashDinamica();
                        orgHashDinamica.setArchivo(archivo);
                        orgHashDinamica.setTipoOrg(5);
                        orgHashDinamica.Text = "Organizacion Hash Dinamica - " + openFile.SafeFileName.Substring(0, openFile.SafeFileName.Length - 6);
                        orgHashDinamica.MdiParent = this;
                        orgHashDinamica.Show();
                    break;
                }
            }
         }