該實(shí)例有很多實(shí)現(xiàn)方法,下面介紹一種不同的給你:
網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、重慶小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶創(chuàng)新互聯(lián)還提供了荔波免費(fèi)建站歡迎大家使用!
首先要在窗體中載入以下控件:progressbar(進(jìn)度條),label(用來(lái)實(shí)時(shí)顯示文本提示),兩個(gè)timer(分別控制進(jìn)度條進(jìn)度的增減),然后用以下代碼就能實(shí)現(xiàn):
Public Class Form1
Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
Timer1.Enabled = True
Timer1.Interval = 500
Timer2.Interval = 500
ProgressBar1.Value = 0
ProgressBar1.Maximum = 100
ProgressBar1.Minimum = 0
End Sub
'上述過(guò)程是設(shè)置控件的初始值,也可以在屬性面板設(shè)置
Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
ProgressBar1.Value += 1
Label1.Text = "當(dāng)前完成" ProgressBar1.Value "%"
If (ProgressBar1.Value = 100) Then
Timer1.Enabled = False
Timer2.Enabled = True
End If
End Sub
'timer1用來(lái)控制進(jìn)度的增加
Private Sub Timer2_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer2.Tick
ProgressBar1.Value -= 1
Label1.Text = "當(dāng)前完成" ProgressBar1.Value "%"
If (ProgressBar1.Value = 0) Then
Timer1.Enabled = True
Timer2.Enabled = False
End If
End Sub
'time2用來(lái)控制進(jìn)度的減少
End Class
Private Sub Command1_Click()
Dim A, B, C
A = 10
B = 3
C = f(A) / (f(B) * f(A - B))
Print C
End Sub
Private Function f(n)
Dim I As Integer
f = 1
For I = 1 To n
f = f * I
Next I
End Function
先以開(kāi)發(fā)者的角度:
PHP跟.net根本就不是一個(gè)級(jí)別的,.net無(wú)論是應(yīng)用場(chǎng)合、開(kāi)發(fā)環(huán)境、幫助文檔、編寫風(fēng)格、運(yùn)行效率全部吊打PHP;PHP之所以流行就是因?yàn)楹芏嚅_(kāi)源框架都是現(xiàn)成的,剛好符合國(guó)人拿來(lái)主義的精神,修修改改就能拿來(lái)賣錢了。
JAVA各方面體量大致跟.net旗鼓相當(dāng),Windows系統(tǒng)下還是.net的天下,企業(yè)應(yīng)用方面JAVA占用率高些,移動(dòng)開(kāi)發(fā)方面因?yàn)榘沧亢吞O果的原因,.net失去了先機(jī)。微軟正在逐步趕超,unitiy、.net core都在表明微軟的態(tài)度。
以成本的角度:
微軟的產(chǎn)品哪都好,就是版權(quán)太貴,Windows系統(tǒng)要錢,office要錢,服務(wù)器要錢,sqlserver要錢,再高級(jí)點(diǎn)用用企業(yè)版、集群之類的,做一個(gè)項(xiàng)目下來(lái)才能掙多少錢,都給微軟了。PHP之所以能存活,就是linux免費(fèi),MySQL免費(fèi),Apache免費(fèi),PHP免費(fèi),就連框架都免費(fèi);JAVA跟PHP差不多。這種生態(tài)下導(dǎo)致了代碼資源非常豐富,天下一般抄,開(kāi)發(fā)成本就更低了。所以不是微軟的東西不好,是JAVA和PHP開(kāi)發(fā)成本太低了。用過(guò)對(duì)比你會(huì)發(fā)現(xiàn),貴有貴的道理,所有開(kāi)發(fā)幫助文檔中,沒(méi)有比微軟做的更詳盡的。
如果你是一個(gè)獨(dú)立開(kāi)發(fā)者,首選.net,Windows桌面應(yīng)用、Windows服務(wù)、Windows 游戲 、網(wǎng)站、webservice、unity 游戲 ,除了安卓和蘋果原生應(yīng)用,.net都能勝任。如果微軟可以在安卓下造出類似framework的東西,那就一統(tǒng)天下了。
做了7年的c#開(kāi)發(fā),4年多的java,c/c++,說(shuō)說(shuō)我的看法,主要有的區(qū)別:
一是開(kāi)源和閉源的區(qū)別,.net早期完全閉源,開(kāi)發(fā)也是完全傻瓜式的,微軟的思想就是讓開(kāi)發(fā)更容易,所以無(wú)法看到底層實(shí)現(xiàn),給人的感覺(jué)就是走一條胡同,很快到達(dá)目的地卻無(wú)法知道墻內(nèi)的東西,接觸過(guò)java和c之后,感覺(jué)就像掉進(jìn)了大海,原來(lái)海底也這么漂亮,有太多開(kāi)源的軟件和框架,你可以看到更深層的東西,比如我們看dubbo,看進(jìn)去后看netty,netty看進(jìn)去后看到Linux,select,epoll,看到epoll,看Linux相關(guān)的,感覺(jué)就是掉進(jìn)了大海,太多東西需要學(xué)習(xí),做這么多年開(kāi)發(fā)依然在不斷的學(xué)習(xí),但也給了我更多興趣和探知未知世界的樂(lè)趣,以前做.net的時(shí)候有種感覺(jué)就是,別讓我做非.net的東西,我不會(huì),對(duì)陌生的的東西很害怕,現(xiàn)在的感覺(jué)就是你讓我寫個(gè)控制原子彈的程序我也敢去寫(比方)。
二是免費(fèi)和收費(fèi)的區(qū)別,所有的公司產(chǎn)品的成本是公司發(fā)展的最關(guān)鍵因素之一,.net全家桶成本太高,vs的版權(quán)+windows版權(quán)+sql server版權(quán)再加上其它支持類軟件版權(quán),成本非常高,相反linux完全免費(fèi)開(kāi)源,給你選你會(huì)選哪一個(gè)?同時(shí)linux或從Unix而來(lái),但天生具有輕量級(jí)性能可以發(fā)揮到極致而且穩(wěn)定的系統(tǒng),而windows為個(gè)人和辦公而設(shè)計(jì),界面和系統(tǒng)其它資源就讓系統(tǒng)占用一部分,感覺(jué)很笨重,上天做一個(gè)長(zhǎng)連接測(cè)試,單臺(tái)Linux輕松上幾十萬(wàn),當(dāng)然由于內(nèi)存原因,否則可以上百萬(wàn),而windows就很難做到,而且Linux哪里不行你可以去改的,windows就不行了,所以一個(gè)穩(wěn)定高效免費(fèi)的還有一大堆開(kāi)源支持的,和一個(gè)收費(fèi)性能相比沒(méi)有那么高效的,好多公司自然選擇前者
三是開(kāi)發(fā)效率,上面說(shuō)兩點(diǎn)都說(shuō).net處于下風(fēng),但.net不是一無(wú)是處,.net有自身的優(yōu)點(diǎn),那就是開(kāi)發(fā)效率,.net在java之上做了改進(jìn),讓開(kāi)發(fā)人員更容易開(kāi)發(fā),語(yǔ)言優(yōu)美,做企業(yè)應(yīng)用開(kāi)發(fā)是很好的工具,可以快速出結(jié)果,你用其它開(kāi)發(fā)要么大炮打蚊子,要么不穩(wěn)定,在工廠和企業(yè)就要求很快做出來(lái),這是.net優(yōu)勢(shì),所以有他的市場(chǎng)份額,說(shuō)這么多發(fā)現(xiàn)沒(méi)個(gè)圖,有評(píng)論的傳一張
為什么PHP、Java在市面上比.NET要受歡迎?而且從各大招聘網(wǎng)站上看PHP、Java的崗位比.NET崗位要多很多。
其實(shí).NET也是有不少的優(yōu)點(diǎn)的:
但是,它的致命缺點(diǎn)是:
設(shè)想一下,一個(gè)企業(yè),如果服務(wù)器眾多,那系統(tǒng)費(fèi)用、數(shù)據(jù)庫(kù)的授權(quán)費(fèi)用,是多么龐大的一筆支出!
而PHP、Java則不同,它們都是跨平臺(tái)開(kāi)源免費(fèi)的,雖然Java開(kāi)始收費(fèi)了(但還有免費(fèi)的OpenJDK),所以PHP、Java還是首選。
我自己當(dāng)初學(xué)過(guò).net,java,現(xiàn)在算是略有了解。 就我個(gè)人理解, 許多公司不用.net 語(yǔ)言的根本原因,就是 .net 在最初的時(shí)候不開(kāi)源,教程少,入門較難,而且最后正式發(fā)行程序什么,還要交錢,所以在許多公司中首選java這種開(kāi)放語(yǔ)言,教程多,入門簡(jiǎn)單,基本不收費(fèi)(不收費(fèi)是關(guān)鍵,劃重點(diǎn)) 。這也算是開(kāi)源與閉源軟件之爭(zhēng)吧,最終以java為首的開(kāi)源軟件獲勝,得以普及。
后來(lái),開(kāi)源軟件已經(jīng)是大勢(shì)所趨,這時(shí)候微軟.net陣營(yíng)已經(jīng)做了許多改變。我最熟悉.net中的c#語(yǔ)言,我就以c#為例說(shuō)說(shuō)吧。
微軟以前信奉閉環(huán),所有語(yǔ)言都不支持跨平臺(tái),也就沒(méi)有c#;后來(lái)java越來(lái)越發(fā)展壯大,.net感受到了巨大危險(xiǎn),于是就模仿java,.net提出了c#,借以打擊java。c#很像java語(yǔ)言,而且和java一樣能夠跨平臺(tái),windows、linx、android、ios都可以編程,這就是微軟做的改變。
如果大家用過(guò)c#或者vb,c++來(lái)編寫窗口程序,就會(huì)發(fā)現(xiàn),這些語(yǔ)言寫出來(lái)的windows窗口太棒了,而用java寫出來(lái)的窗口程序,不敢恭維,太丑了,這也就是我后來(lái)學(xué)習(xí)c#的原因。(這也就是為什么說(shuō)跨平臺(tái)只是一個(gè)美夢(mèng)而已)。
跨平臺(tái)、開(kāi)源之后的 .net ,其實(shí)跟java的基礎(chǔ)結(jié)構(gòu)并不差多少,但不具備數(shù)量?jī)?yōu)勢(shì),也就是說(shuō):java由于之前用的人太多了,各個(gè)方面的創(chuàng)新、發(fā)展都比較完善,有著堅(jiān)實(shí)的用戶群體、應(yīng)用基礎(chǔ);而 .net ,由于是后發(fā),已經(jīng)失去了太多的應(yīng)用環(huán)境,自然現(xiàn)在許多公司在不考慮是專為windows開(kāi)發(fā)的情況下,是不會(huì)太主動(dòng)使用.net。
如果用戶采用微軟全家桶解決方案, .Net 的開(kāi)發(fā)效率和體驗(yàn)是完全可以吊打 Java 和 PHP 的, 但昂貴的價(jià)格, 讓開(kāi)發(fā)者和用戶又愛(ài)有恨.
其實(shí) .Net + C# 現(xiàn)在雖說(shuō)不如一票跨平臺(tái)框架語(yǔ)言用得人多, 但也遠(yuǎn)遠(yuǎn)談不上沒(méi)落.
在這個(gè)問(wèn)題上, 個(gè)人認(rèn)為 Microsoft 的原 CEO Steve Ballmer 難辭其咎, 在 Windows 霸主地位已經(jīng)開(kāi)始崩潰的時(shí)候 依然固執(zhí)堅(jiān)持封閉生態(tài), 導(dǎo)致當(dāng)時(shí)的 .Net 開(kāi)發(fā)者 無(wú)不焦慮和彷徨.
不過(guò) 2014 年 Satya Nadella 接任 CEO 后, 微軟 逐漸采取了 務(wù)實(shí) 開(kāi)放 的做法, 收購(gòu) Xamarin 整合進(jìn) IDE, 推出 Visual Studio 社區(qū)版, C# 開(kāi)始免費(fèi)和跨平臺(tái), Microsoft 越來(lái)越像 Oracle, C# 越來(lái)越像 Java, 多多少少緩解了開(kāi)發(fā)者的憂慮, 不少開(kāi)發(fā)者開(kāi)始回歸, 畢竟 C# 優(yōu)雅的語(yǔ)法 和 Visual Studio 卓越的開(kāi)發(fā)體驗(yàn) 確實(shí)讓人難以割舍.
.Net以前是不開(kāi)源的,需要收費(fèi),有著各種版權(quán)問(wèn)題,導(dǎo)致其語(yǔ)言生態(tài)發(fā)展不夠。有其語(yǔ)言優(yōu)點(diǎn),但是從公司發(fā)展成本上來(lái)考慮,就注定不能作為首選。
PHP未興起之前,很多公司使用.net來(lái)開(kāi)發(fā)網(wǎng)站,因?yàn)橄啾容^java的JSP,開(kāi)發(fā)效率也還是要高一些,這對(duì)中小型企業(yè)的業(yè)務(wù)快速變更升級(jí)很重要。JSP運(yùn)行速度會(huì)快一些,但其需要編譯的特點(diǎn),開(kāi)發(fā)速度會(huì)相對(duì)緩慢。而對(duì)中小型企業(yè)來(lái)說(shuō),時(shí)間就是金錢,開(kāi)發(fā)速度太慢,跟不上業(yè)務(wù)發(fā)展是很致命的。
之后PHP應(yīng)運(yùn)而生,其語(yǔ)言設(shè)計(jì)的初衷就是為了快速開(kāi)發(fā)web應(yīng)用。完全的開(kāi)源免費(fèi),開(kāi)發(fā)效率非常高,甚至一個(gè)人就可以搞定一個(gè)項(xiàng)目。中小型公司,從發(fā)展之初的考慮,逐漸將PHP作為首選發(fā)展語(yǔ)言。
隨著PHP生態(tài)的逐漸強(qiáng)大,.net這種生態(tài)落后,開(kāi)發(fā)速度比不上PHP,運(yùn)行速度比不上JSP的語(yǔ)言也就逐漸沒(méi)落了。
現(xiàn)在也有很多發(fā)展好了的公司,做大了做強(qiáng)了,又開(kāi)始將自己的PHP項(xiàng)目往JSP遷移,因?yàn)殚_(kāi)始追求運(yùn)行速度。
所以PHP基本占領(lǐng)了中小型公司,而大公司則更多選擇JSP。這都是語(yǔ)言的特性和優(yōu)勢(shì)決定的,將來(lái)如果出現(xiàn)一種語(yǔ)言能同時(shí)兼有開(kāi)發(fā)速度和運(yùn)行速度的免費(fèi)開(kāi)源的語(yǔ)言,那PHP和JSP也會(huì)逐漸走上.net這條路。一切都是企業(yè)成本和效率的問(wèn)題。
+++++++++++++++++++++++++++++++++++++
第一次寫問(wèn)答,沒(méi)想到有這么高的閱讀量。
有些人說(shuō)我對(duì).net的認(rèn)識(shí)太落后了,好吧,我開(kāi)始學(xué)編程的時(shí)候,.net確實(shí)是比較封閉的狀態(tài),這些年我也不再去關(guān)注.net,對(duì)它的進(jìn)一步了解也都是通過(guò)身邊的同學(xué)朋友側(cè)面反映的。
然后,真實(shí)情況是,我身邊所有學(xué).net的同學(xué)都轉(zhuǎn)行了。因?yàn)閸徫簧?,薪資低,真的生存很艱難哩。
遙想當(dāng)年,我們一個(gè)宿舍的同學(xué)(一群窮逼,只能住在學(xué)校破舊的8人大宿舍里,因?yàn)樽∷拶M(fèi)真便宜啊 ),開(kāi)始討論選某個(gè)語(yǔ)言作為今后學(xué)習(xí)方向。有人選擇了.net,有人選擇了PHP,有人選擇了JSP,然后各自努力。
現(xiàn)在,再來(lái)看彼此發(fā)展,.net的同學(xué)都轉(zhuǎn)行了,PHP的都在中小型公司,JSP的在平安保險(xiǎn)這種大公司里。薪資待遇對(duì)比,.net的同學(xué)和我們也有了差距。如果只看基本工資的話,還是PHP的高,哈哈。但是,加上年終獎(jiǎng)就撲街了。我們同在深圳的經(jīng)常一起出來(lái)聚聚,中小型公司的經(jīng)常自嘲,辛辛苦苦一整年,比不上**一個(gè)年終獎(jiǎng)。唉,大公司年終獎(jiǎng)是真多啊,可以頂你大半年甚至一年的工資,人比人氣死人。
當(dāng)然,學(xué)PHP也不是都好,有個(gè)同學(xué)受不了壓力轉(zhuǎn)行做SEO了。也不是所有學(xué)java都好,我現(xiàn)在公司的測(cè)試就是個(gè)學(xué)java找不到工作,轉(zhuǎn)而當(dāng)測(cè)試的。
其實(shí)問(wèn)題還是經(jīng)驗(yàn),有多年工作經(jīng)驗(yàn),就是你找工作最好的敲門磚了。
最后,沒(méi)有最好的語(yǔ)言,適應(yīng)市場(chǎng)發(fā)展的語(yǔ)言就是好語(yǔ)言。
各位看官,不喜勿噴!
簡(jiǎn)單的說(shuō)幾句,就幾句。我司用.net做web,推送服務(wù)器,消息服務(wù)器,數(shù)據(jù)握手服務(wù),cad應(yīng)用二次開(kāi)發(fā),gis應(yīng)用,各種手持設(shè)備應(yīng)用,各種服務(wù)窗口用的終端應(yīng)用,視頻監(jiān)控等等等,你還覺(jué)得php真的能打過(guò).net么?
個(gè)人的觀點(diǎn):
1、php肯定比不過(guò).net了,用他主要是網(wǎng)站那塊而已。
2、net和Java,單純從語(yǔ)言c#比java優(yōu)秀,開(kāi)源生態(tài)肯定是Java,效率是c#
3、.net效率不高,在于windows平臺(tái),現(xiàn)在跨平臺(tái)了,linux性能高于windows。
.Net core 有一定的機(jī)會(huì)。
這個(gè)答案有幾點(diǎn):
1、運(yùn)行環(huán)境成本問(wèn)題,在.net core出來(lái)之前,.net
需要的運(yùn)行環(huán)境搭設(shè)成本高,windows服務(wù)器正版上萬(wàn),用access做數(shù)據(jù)庫(kù)也需要幾千元的正版office,雖說(shuō)sql express是免費(fèi)的,但是閹割的太厲害。所以一般win虛擬主機(jī)或者服務(wù)器都基本上比linux的貴,尤其是海外注重版權(quán)地區(qū),更是差至少一半,所以造成了php大行其道,因?yàn)樗倪\(yùn)行環(huán)境幾乎零成本,而且服務(wù)器需要的配置可以很低,甚至128m內(nèi)存就可以跑php程序。
2、開(kāi)發(fā)環(huán)境成本問(wèn)題,一樣的毛病,code出來(lái)之前,開(kāi)發(fā).net程序的工具首選visual studio,但是正版的也要幾千上萬(wàn),不是一般人承受的起的。而php和java的免費(fèi)又好用的開(kāi)發(fā)工具又很多,因此php又獲得了先機(jī)。
3、學(xué)習(xí)成本問(wèn)題,.net之前,微軟平臺(tái)應(yīng)用系列的開(kāi)發(fā)需要太多,vb,c,c++,而網(wǎng)頁(yè)腳本語(yǔ)言是基于vbscript的asp,隨著系統(tǒng)的發(fā)展,這些需要和腳本逐步跟不上時(shí)代對(duì)敏捷開(kāi)發(fā)、更復(fù)雜系統(tǒng)開(kāi)發(fā)的需求,因此推出了asp.net和c#、f#,vb.net等語(yǔ)言,網(wǎng)頁(yè)方面使用asp.net開(kāi)發(fā)又一直升級(jí),.net 2.0,3.0,3.5,到現(xiàn)在的4.7.x,每次升級(jí)都帶來(lái)了新的概念,如今為了搶回份額,推出了.net core 也是升級(jí)了好幾個(gè)版本,所以.net的開(kāi)發(fā)要不斷的學(xué)習(xí),學(xué)習(xí),升級(jí),升級(jí)。而php就不一樣了,版本的升級(jí)基本上都是框架內(nèi)的升級(jí),學(xué)習(xí)成本明顯低于.net
4、資源豐富問(wèn)題,如上所述,由于成本問(wèn)題,很多人選擇了php開(kāi)發(fā),然后php的免費(fèi)框架越來(lái)越多,程序員一般都懶,拿來(lái)修修改改就能上線,接著做下個(gè)項(xiàng)目就可以啦,而.net明顯沒(méi)那么多免費(fèi)框架,市面上分許多.net框架是要授權(quán)費(fèi)的。
不過(guò)目前微軟的發(fā)力,也在著手改善這種問(wèn)題,發(fā)布了visual studio code,visual studio community免費(fèi)開(kāi)發(fā)工具開(kāi)發(fā)成本明顯降低,.net code跨平臺(tái)語(yǔ)言只要版本符合要求linux系統(tǒng)也可以運(yùn)行.net code開(kāi)發(fā)的程序了。如果能夠有支持linux的文件型的數(shù)據(jù)庫(kù)軟件(例如office的access)發(fā)布就更好了。
做一個(gè)企業(yè),最主要的目標(biāo)是生存?;钕聛?lái),才是根本目標(biāo),說(shuō)好聽(tīng)一點(diǎn),就是可持續(xù)發(fā)展。微軟的生態(tài)圈大多收費(fèi),價(jià)格不菲,雖然從性能,入門,易用性來(lái)說(shuō),.Net都好于Java領(lǐng)域,好于JSP和PHP,無(wú)奈中國(guó)市場(chǎng)競(jìng)爭(zhēng)激烈,企業(yè)研發(fā)成本是首選考慮的因素,尤其是在中美貿(mào)易戰(zhàn)的背景下,美國(guó)要加強(qiáng)知識(shí)產(chǎn)權(quán)保護(hù)的前提下,使用方用.Net產(chǎn)品和服務(wù)就要支付昂貴的版權(quán)費(fèi)用,讓人承受不起。那么,免費(fèi)開(kāi)源的非.Net體系,就會(huì)受到很多企業(yè)青睞,企業(yè)只要承擔(dān)人工成本,不用過(guò)多支付版權(quán)費(fèi),是企業(yè)不得不考慮的方面。所以,現(xiàn)在使用什么技術(shù),未來(lái)使用啥技術(shù),是市場(chǎng)競(jìng)爭(zhēng)的結(jié)果,要把握住這種趨勢(shì),才能占有先機(jī)。
與使用System.Windows.Forms命名空間中的控件的用法沒(méi)有區(qū)別。
首先添加引用。
其次導(dǎo)入(Imports)命名空間。
接著就可以使用了:
1、要使用用戶控件的實(shí)例成員,就先創(chuàng)建一個(gè)用戶控件的實(shí)例,再通過(guò)實(shí)例名.實(shí)例成員名訪問(wèn);
2、要使用用戶控件的共享(Shared)成員,通過(guò)用戶控件類名.共享成員名訪問(wèn)。
如果你問(wèn)的是怎樣創(chuàng)建自己的用戶控件類:
1、繼承類System.Windows.Forms.UserControl;
2、繼承任何一個(gè)已經(jīng)存在的控件類(只要這個(gè)控件類不是NotInheritable的就行)。