Здравствуйте! Сегодня: Вс, 25 Авг 2019, Ваш IP: 34.238.194.166 Войти через loginza
 
Вход | Регистрация | Забыли пароль?
Мой Kbyte.Ru
> Список форумов Kbyte.Ru - - Общие вопросы программирования
+ Создать новую тему Страница: 1
Тема: Что это?? · +  +  дата добавления: 29.08.2014 / 23:47
Автор темы:
JustArt
JustArt
тем: 95 / ответов: 675 / благодарностей: 3 / репутация: 35
Url: crash.kbyte.ru
Skype: ghostman12.12.2012
ответов: 675
создал(а) тем: 95


<System.Serializable()>Structure BtColl
Dim put as String
Dim bttext as String
end structure

Используется в коде, который мне когда слепил один программист (Тоже Алексей)
Imports System.IO

Public Partial Class MainForm
	Public Sub New()
		Me.InitializeComponent()
	End Sub
	
<System.Serializable()>Structure BtColl
Dim put as String
Dim bttext as String
end structure

Dim bt(15) as BtColl
	
	Sub MainFormLoad(sender As Object, e As EventArgs)
if file.Exists(Application.StartupPath & "\butons.ini") then
 Dim formatter As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
  Using stream As IO.Stream = IO.File.Open(Application.StartupPath & "\butons.ini", IO.FileMode.Open)
                bt = formatter.Deserialize(stream)
End Using
 for i as Integer = 1 to  Me.Fp.Controls.Count
	Me.Fp.Controls("Button" & i).Text =  bt(i).bttext
Next
BtHide()
 end if
	End Sub
	
	Sub Button17Click(sender As Object, e As EventArgs)
	increm()
	BtHide()
	End Sub
	
	Sub increm()
		if not Num.Text = string.Empty then
	if not Cint(Num.Text) > bt.Length
		bt(Cint(Num.Text)).bttext = bText.Text
		 bt(CInt(Num.Text)).put = put.Text
		Me.Fp.Controls("Button" & Num.Text).Text =  bt(CInt(Num.Text)).bttext
	    Me.Update
	    clear()
	    BtHide()
	   End If
	     end if
	End Sub
	
	Sub clear()
 bText.Text = string.Empty
 put.Text= string.Empty
 Num.Text= string.Empty
	End Sub
	
	Sub MainFormFormClosing(sender As Object, e As FormClosingEventArgs)
		Dim formatter As New Runtime.Serialization.Formatters.Binary.BinaryFormatter()
            Using stream As IO.Stream = IO.File.Create(Application.StartupPath & "\butons.ini")
                formatter.Serialize(stream, bt)
            End Using
	End Sub
	
	
	Sub Fshell(ByVal BtNum As Integer)
		try
		Shell("explorer /select," &  bt(BtNum).put, AppWinStyle.NormalFocus)
		Catch ex As Exception
			msgbox(ex.Message,MsgBoxStyle.Information)
			end try
	End Sub
	
	
	Sub BtHide()
for i as Integer = 1 to  Me.Fp.Controls.Count
	If Me.Fp.Controls("Button" & i).Text = String.Empty Then
	Me.Fp.Controls("Button" & i).Hide()
	Else
		Me.Fp.Controls("Button" & i).Show()
	End If
Next
	End Sub
	
	
	Sub Button1Click(sender As Object, e As EventArgs)
		Fshell(1)
	End Sub
	Sub Button2Click(sender As Object, e As EventArgs)
		Fshell(2)
	End Sub
	Sub Button3Click(sender As Object, e As EventArgs)
		Fshell(3)
	End Sub
	Sub Button4Click(sender As Object, e As EventArgs)
		Fshell(4)
	End Sub
	Sub Button5Click(sender As Object, e As EventArgs)
		Fshell(5)
	End Sub	
	Sub Button6Click(sender As Object, e As EventArgs)
		Fshell(6)
	End Sub
	Sub Button7Click(sender As Object, e As EventArgs)
		Fshell(7)
	End Sub	
	Sub Button8Click(sender As Object, e As EventArgs)
		Fshell(8)
	End Sub
	Sub Button9Click(sender As Object, e As EventArgs)
		Fshell(9)
	End Sub	
	Sub Button10Click(sender As Object, e As EventArgs)
		Fshell(10)
	End Sub
	Sub Button11Click(sender As Object, e As EventArgs)
		Fshell(11)
	End Sub
	Sub Button12Click(sender As Object, e As EventArgs)
		Fshell(12)
	End Sub
	Sub Button13Click(sender As Object, e As EventArgs)
		Fshell(13)
	End Sub
	Sub Button14Click(sender As Object, e As EventArgs)
		Fshell(14)
	End Sub
	Sub Button15Click(sender As Object, e As EventArgs)
		Fshell(15)
	End Sub
End Class

Технологии: .NET Framework, Visual Basic .NET
--
Du Main Du BA DU

+ butons.zip (10,17 Кб)  
Ответ # 1 # · +  +  дата добавления: 30.08.2014 / 00:04
Автор ответа:
Алексей Немиро
Алексей Немиро
тем: 534 / ответов: 5130 / благодарностей: 325 / репутация: 211
Чашка Kbyte.Ru>>
Url: aleksey.nemiro.ru
Icq: 261779681
Skype: alekseynemiro
ответов: 5130
создал(а) тем: 534


Структуры, это как классы, только проще, и экземпляры не нужно создавать.
Памяти потребляют меньше (полезно, если понадобится создавать огромные массивы), но для больших структур лучше использовать классы.

На практике, структуры редко встречаются. Даже для простых объектов обычно используют классы. Хотя это зависит от задач, но я за последние годы, в вебе ни разу не встречал структур. Единственное, что приходит на ум - Хитрый стрелок экранов, там было бы эффективней использовать структуры для рисования, т.к. может быть множество объектов для прорисовки.
 
Страница: 1 + Создать новую тему