兩天C 專案總結

2021-08-27 00:26:20 字數 2510 閱讀 6562

這兩天做了乙個簡單的銀證轉賬管理系統,做得不是很滿意,但是其中學到了一些很實用的東西,比如socket多執行緒程式設計,介面設計要統一等等..

現在結束了特想寫個部落格記錄下,以後再寫相關的專案就能很好地利用上這些資源。

1、show是模態對話方塊,showdialog是非模態對話方塊,如果用show來現實新對話方塊會導致對話方塊滿天飛,而showdialog則使得對話方塊現實比較有條理。

//先開啟子窗體,想隱藏主窗體。

//如果這個時候用show的話,則會發生:開啟子窗體的同時主窗體又顯示出來

//使用showdialog()的時候主要當子窗體關閉的時候主窗體才會顯示。

form2 f2 = new form2();

this.visible = false;

f2.showdialog();

this.visible= true;

2、若要指定對話方塊在某個位置,可通過修改對話方塊屬性startposition 來指定位置。

3、如果不需要窗體上面的組大話最小化按鈕可以點屬性設定,如果不要關閉,可在在初始化方法中加this.controlbox = false; 或者將將form的formborderstyle設定為none標題欄就沒了

4、獲取螢幕尺寸大小

rectangle rect = system.windows.forms.systeminformation.virtualscreen;

int width = rect.width;

int height = rect.height;

5、選擇需要對齊格式的**快,然後ctrl+k再按ctrl+f即可

6、網路傳輸時需要位元組流和字串互轉可用encoding.unicode.getbytes(string)或者encoding.unicode.getstring(byte)

7、string轉換為char陣列,直接用string str = string(cha),char陣列轉換為strng使用char cha = str.tochararray();

8、將乙個string根據某些跟則拆分成若干個string,stringmany = str.split('$');

9、tcpclient操作

tcpclient 類提供了一些簡單的方法,用於在同步阻止模式下通過網路來連線、傳送和接收流資料。

為使 tcpclient 連線並交換資料,使用 tcp protocoltype 建立的 tcplistener 或 socket 必須偵聽是否有傳入的連線請求。 可以使用下面兩種方法之一連線到該偵聽器:

* 建立乙個 tcpclient,並呼叫三個可用的 connect 方法之一。

* 使用遠端主機的主機名和埠號建立 tcpclient。 此建構函式將自動嘗試乙個連線。

要傳送和接收資料,請使用 getstream 方法來獲取乙個 networkstream。 呼叫 networkstream 的 write 和 read 方法與遠端主機之間傳送和接收資料。 使用 close 方法釋放與tcpclient 關聯的所有資源。

//我建立了乙個tcpconnection類,傳入ip位址和埠號返回乙個tcpclient類

public int _port;

public ipaddress _ipaddr;

public networkstream nws;

_port = 8888;

string strserver = "127.0.0.1";

ipaddress.tryparse(strserver, out _ipaddr); //字串轉ip

//字串轉位元組流併發送到伺服器

string sendtxt;

nws.write(encoding.unicode.getbytes(sendtxt), 0, encoding.unicode.getbytes(sendtxt).length);

//從伺服器讀取位元組流

byte packet = new byte[maxpacket];

nws.read(packet, 0, maxpacket);

string result = encoding.unicode.getstring(packet).trimend('\0'); //位元組流轉為字串並把後面null去掉

if (result == error) 報錯;

10、對話方塊最大化,並且不覆蓋工作列

this.formborderstyle = formborderstyle.none;                            //對話方塊最大化,並且不覆蓋工作列

this.maximumsize = new size(screen.primaryscreen.workingarea.width, screen.primaryscreen.workingarea.height);

this.windowstate = formwindowstate.maximized;

兩天的總結

昨天實在是太累了,晚上一回來倒頭就睡,也沒看幾點,反正是9點之前 有史以來最早睡的一次 然後就沒有寫日誌了 今天補做。其實,這兩天的生活大致相同,大半天時間都是在寶山網球館,隨著比賽的進行,越來越多的選手被淘汰,比賽也越顯精彩許多,屢屢出現那種連續搶七的三盤大戰,雖然讓觀眾一飽眼福但卻是苦了我們當球...

PIC學習兩天總結

這兩天買了乙個pic的程式設計器用的公司自己的板子。有點心得,記錄下來。pic有配置字,剛開始寫程式的時候,把看門狗開啟了,流水燈程式,愣是只流兩下,比較鬱悶呀。呵呵,弄了半天才弄明白,原來開啟了看門狗,可是程式裡沒有對看門狗進行處理。就只流兩下了。在程式裡對配置字進行了,配置,當你在引導程式時,程...

兩天低效程式設計總結

1.產品設計足夠了,技術設計還不夠。中途換了一次框架,沒有考慮到換框架的相容性。2.過於依賴除錯工具,設計和寫 時的大局觀不夠。3.時間管理做得不夠,又陷入了埋頭程式設計的陷阱。1.使用它的ui不如使用jquery mobile。它的基本上是抄襲的jquery mobile,還抄得很爛。甚至可以考慮...