我在做一個畫圖用的DLL,遇到一個問題,
因這這個DLL里有一個函式如
Graphics g = Graphics.FromImage(bm);
g.DrawString("0", this.Font, brush, 30, height - 10);
這個this.Font是Form1類里的屬性,現在是報錯狀態,如何把它作為引數傳入到DLL的函式中,
uj5u.com熱心網友回復:
有沒人有支持一下的uj5u.com熱心網友回復:
Form1 f1 = new Form1();var f= f1.Font;
uj5u.com熱心網友回復:
this. 是有作用域的。uj5u.com熱心網友回復:
靜態下是不可以用的。uj5u.com熱心網友回復:
如果我傳入函式的型別是var,然后把變數f傳到DLL函式里面去,提示var型別傳不了
uj5u.com熱心網友回復:
f1.Font;是一個物件,作為函式引數要怎么傳遞呢
uj5u.com熱心網友回復:
把你寫的方法寫到Form1里邊就可以起作用;或者把Form1里邊的Font屬性作為引數傳遞到你寫的方法中
uj5u.com熱心網友回復:
DLL里面定義的方法,this 是指這個方法所屬的物件,而這個物件里應該沒有名稱為 Font 的屬性定義。你可以增加一個 Font 屬性,并在建構式中初始化成默認的值。uj5u.com熱心網友回復:
那這個引數先寫一個什么型別的變數,才能讓它不報錯,如果寫Object也照樣報錯,
uj5u.com熱心網友回復:
就是 System.Drawing.Font 型別。uj5u.com熱心網友回復:
你又不操作form,就只獲取幾個引數。把這個幾個引數傳進來就是,怎么這都要糾結下。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/129557.html
標籤:C#
下一篇:C# 截取字串問題
