本文整理汇总了C#中System.Windows.Forms.TreeNode.ExpandAll方法的典型用法代码示例。如果您正苦于以下问题:C# System.Windows.Forms.TreeNode.ExpandAll方法的具体用法?C# System.Windows.Forms.TreeNode.ExpandAll怎么用?C# System.Windows.Forms.TreeNode.ExpandAll使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类System.Windows.Forms.TreeNode
的用法示例。
在下文中一共展示了System.Windows.Forms.TreeNode.ExpandAll方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。
示例1: Program
//////////////////////////////////////////////////////////////////////////
/* Program = "class" ident { ConstDecl | VarDecl | ClassDecl }
* "{" { MethodDecl } "}" . */
// First(Program)={class}; Follow(Program)={eof}
static void Program()
{
//Program1.form1.treeView1.ExpandAll();
System.Windows.Forms.TreeNode program = new System.Windows.Forms.TreeNode(); //Crea el nodo program
if (Parser.muestraProducciones)
{
program.Text = "Program"; //Texto del nodo "program"
Program1.form1.treeView1.Nodes.Add(program); //"cuelga" el nodo (raiz) "program" del treeView1 ya creado
Parser.MessageBoxCon3Preg();
Code.seleccLaProdEnLaGram(0); //pinta de rojo Program = 'class' ident PosDeclars '{' MethodDeclsOpc '}'.
//Code.cargaProgDeLaGram("Program = 'class' ident PosDeclars '{' MethodDeclsOpc '}'.");
Parser.MessageBoxCon3Preg();
program.Nodes.Add("class");
//Program1.form1.treeView1.Refresh();
//Program1.form1.treeView1.Update();
program.ExpandAll(); //Visualiza (Expande) hijo de Program
Parser.MessageBoxCon3Preg();
}
//antes del Check (Token.CLASS), token = ...(1,1), laToken = ..."class".. y la = Token.CLASS
Check(Token.CLASS); //class ProgrPpal
//Se cumple que: (la == expected) => ejecuta Scan => token = ..."class"... y laToden = ..."ProgrPpal"
Code.coloreaConRojo("token");
//Code.coloreaConRojo(true); //colorea "class" en ventana de Edicion
//El argumento "true" => que lo que va a colorear es "el token" (en este caso: "class").
//Si el arg es "false" => que lo que va a colorear es "el laToken"
//"Program = 'class' ident PosDeclars '{' MethodDeclsOpc '}'."
//Ya reconoció 'class', ahora va a reconocer ident
program.Nodes.Add("ident");
Parser.MessageBoxCon3Preg();
Check(Token.IDENT); // "ProgrPpal" => debo insertar el token en la tabla de símbolos
// es el comienzo del programa y abrir un nuevo alcance
//Ahora token = "ProgrPpal" y laToken = "{"
Code.coloreaConRojo("token");
//Code.coloreaConRojo(true); //"class" ya lo pintó, ahora pinta "ProgrPpal" (lo que hay en token)
Symbol prog = Tab.Insert(Symbol.Kinds.Prog, token.str, Tab.noType);//lo cuelga de universe
Code.CreateMetadata(prog);
Tab.OpenScope(prog); //topScore queda ahora apuntando a un nuevo Scope
//El Scope anterior (universo) lo accedo via topScore.outer
//Ya analizó Class ProgrPpal
//Declaraciones (de ctes, de Globals(aunque diga de vars) y de clases)
//hasta q venga una "{"
//"Program = 'class' ident PosDeclars '{' MethodDeclsOpc '}'."
//Ya reconoció ident, ahora va a reconocer PosDeclars
System.Windows.Forms.TreeNode posDeclars = new System.Windows.Forms.TreeNode("PosDeclars");
program.Nodes.Add(posDeclars); //Cuelga un TreeNode porque PosDeclars es No Terminal
Parser.MessageBoxCon3Preg();
Code.seleccLaProdEnLaGram(1); //"PosDeclars = . | Declaration PosDeclars.";
Parser.MessageBoxCon3Preg();
//bool existeDecl = false;
//bool bandarita = false; // bandera se encarga de verificar si existen declaraciones globales,constantes etc.
//"Declaration = ConstDecl | VarDecl | ClassDecl."
while (la != Token.LBRACE && la != Token.EOF) //Si no existen declaraciones, la = Token.LBRACE
{
Code.coloreaConRojo("latoken");
//Code.coloreaConRojo(false); //si existiera una declaracion, as "int i", colorea "int"; (yaPintado = true)
//El argumento "false" => que no debe pintar el "token" (que en este caso seria "ProgrPpal"), sino el laToken (que es "int")
//en este caso, debe "mirar hacia adelante" (laToken)
//para determinar la opcion de la produccion "PosDeclars = . | Declaration PosDeclars."
//Si laToken es "{" => la opcion es "PosDeclars = .", otherwise: "PosDeclars = Declaration PosDeclars."
//Code.cargaProgDeLaGram("PosDeclars = Declaration PosDeclars.");
Code.seleccLaProdEnLaGram(2);
//Code.cargaProgDeLaGram("Declaration = ConstDecl | VarDecl | ClassDecl.");
System.Windows.Forms.TreeNode hijodeclar = new System.Windows.Forms.TreeNode("Declaration = ConstDecl | VarDecl | ClassDecl.");
posDeclars.Nodes.Add(hijodeclar);
//existeDecl = true;
switch (la)
{
case Token.CONST:
ConstDecl(hijodeclar);
//.........这里部分代码省略.........