Chuyển đến nội dung
Diễn đàn CADViet
Đăng nhập để thực hiện theo  
trungdoo

AI giúp mình lấy giá trị trong form với.

Các bài được khuyến nghị

Mình có đoạn mã trong form như sau:

 

double a, b, c, d;

            a = double.Parse(txt_a.ToString());

            b = double.Parse(txt_b.ToString());

            c = double.Parse(txt_c.ToString());

            d = double.Parse(txt_d.ToString());

Và trong class:

CommandMethod("mm")]

        public static void phuongthuc(double a, double b, double c, double d)

        {

  Document acDoc = Application.DocumentManager.MdiActiveDocument;

  Database acCurDb = acDoc.Database;

  using (Transaction acTrans = acCurDb.TransactionManager.StartTransaction())

  {    

      BlockTable acBlkTbl;

      acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId,

                                   OpenMode.ForRead) as BlockTable;     

      BlockTableRecord acBlkTblRec;

      acBlkTblRec = acTrans.GetObject(acBlkTbl[blockTableRecord.ModelSpace],

                                      OpenMode.ForWrite) as BlockTableRecord;    

      Line acLine = new Line(new Point3d(a, b, 0),

                             new Point3d(c, d, 0));

      acLine.SetDatabaseDefaults();   

      acBlkTblRec.AppendEntity(acLine);

      acTrans.AddNewlyCreatedDBObject(acLine, true);  

      acTrans.Commit();

  }

        }

Ai có thể giúp mình liên kết form với class để khi nhập giá trị trong textbox(a,b,c,d) thì chạy trong class và vẽ ra cad.Mình cảm ơn trước nha.

double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
            d = double.Parse(txt_d.ToString());
double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
 
double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
            d = double.Parse(txt_d.ToString());

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

..........

Ai có thể giúp mình liên kết form với class để khi nhập giá trị trong textbox(a,b,c,d) thì chạy trong class và vẽ ra cad.Mình cảm ơn trước nha.

....................

Tham khảo code DrawLine : link download http://www.mediafire.com/?cci7a1a76n57faw

 

15454_addline.jpg

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

 

Mình có đoạn mã trong form như sau:

 

double a, b, c, d;

            a = double.Parse(txt_a.ToString());

            b = double.Parse(txt_b.ToString());

            c = double.Parse(txt_c.ToString());

            d = double.Parse(txt_d.ToString());

Và trong class:

CommandMethod("mm")]

        public static void phuongthuc(double a, double b, double c, double d)

        {

  Document acDoc = Application.DocumentManager.MdiActiveDocument;

  Database acCurDb = acDoc.Database;

  using (Transaction acTrans = acCurDb.TransactionManager.StartTransaction())

  {    

      BlockTable acBlkTbl;

      acBlkTbl = acTrans.GetObject(acCurDb.BlockTableId,

                                   OpenMode.ForRead) as BlockTable;     

      BlockTableRecord acBlkTblRec;

      acBlkTblRec = acTrans.GetObject(acBlkTbl[blockTableRecord.ModelSpace],

                                      OpenMode.ForWrite) as BlockTableRecord;    

      Line acLine = new Line(new Point3d(a, b, 0),

                             new Point3d(c, d, 0));

      acLine.SetDatabaseDefaults();   

      acBlkTblRec.AppendEntity(acLine);

      acTrans.AddNewlyCreatedDBObject(acLine, true);  

      acTrans.Commit();

  }

        }

Ai có thể giúp mình liên kết form với class để khi nhập giá trị trong textbox(a,b,c,d) thì chạy trong class và vẽ ra cad.Mình cảm ơn trước nha.

double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
            d = double.Parse(txt_d.ToString());
double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
 
double a, b, c, d;
            a = double.Parse(txt_a.ToString());
            b = double.Parse(txt_b.ToString());
            c = double.Parse(txt_c.ToString());
            d = double.Parse(txt_d.ToString());

thêm đoạn sau trong form

public double pub_a {get {return a;}}

public double pub_b {get {return b;}}

public double pub_c {get {return c;}}

public double pub_d {get {return d;}}

 

 

thay dòng Line acLine = ......................................... bằng đoạn sau

 

Line acLine;

using(form frm = new form())

{

frm.showDialog()

acLine = new Line(new Point3d(pub_a , pub_b,0), new Point3d( pub_c, pub_d,0));

}

 

p/s: Nên kiểm tra điều kiện user cancel form :D

Good luck!

Chia sẻ bài đăng này


Liên kết tới bài đăng
Chia sẻ trên các trang web khác

Tạo một tài khoản hoặc đăng nhập để nhận xét

Bạn cần phải là một thành viên để lại một bình luận

Tạo tài khoản

Đăng ký một tài khoản mới trong cộng đồng của chúng tôi. Điều đó dễ mà.

Đăng ký tài khoản mới

Đăng nhập

Bạn có sẵn sàng để tạo một tài khoản ? Đăng nhập tại đây.

Đăng nhập ngay
Đăng nhập để thực hiện theo  

×