Программирование
Веб программирование

Свойства VB.Net

 
 

Сейчас мы сделаем программку, в которой, при нажатии на кнопку, свойства текстового поля будут менятся. На форме размести текстовое поле(TextBox) и 3 кнопки(Button). У кнопок измени свойства Text:

Button1 - свойство Text измени на 'Цвет'
Button2 - свойство Text измени на 'Фон'
Button1 - свойство Text измени на 'Текст'

Вот код:

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click ' При нажатии на кнопку 'Цвет':
TextBox1.ForeColor = Color.Red ' Меняем цвет текста на красный
End Sub

Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click ' При нажатии на кнопку 'Фон':
TextBox1.BackColor = Color.Black ' Меняеи цвет фона на черный':
End Sub

Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click ' При нажатии на кнопку 'Текст':
TextBox1.Text = "Изменение свойств" ' Меняем текст в текст. поле.
End Sub

Исходник


Есть вопросы? Спроси на нашем форуме!!
андрей [16.05.2011 22:05]

для тех кто хочет ещё и изменить цвет фона формы вот код Private Sub Button4_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click
Form1.ActiveForm.BackColor = Color.Gray
End Sub

Гость [16.05.2011 22:05]

главная часть Form1.ActiveForm.BackColor = Color.Gray

Александр [13.05.2012 16:16]

а как цвет изменить при помощи RGB?

Екатерина [23.07.2012 12:33]

Option Explicit

Private Type Color
R As Integer
G As Integer
B As Integer
End Type

Dim CStart As Color
Dim CEnd As Color

Dim RStep@, GStep@, BStep@
Dim picH%, picW%
Dim GradType$

Private Sub FormLoad()
picH = picGradient.ScaleHeight
picW = picGradient.ScaleWidth
GradType = optType(0).Caption
End Sub

Private Sub optType
Click(Index As Integer)
GradType = optType(Index).Caption
End Sub

Private Sub cmdApplyClick()
' Выполнение градиентной заливки выбранного типа
picGradient.Cls
' Присвоение начальных и конечных значений
' цветовым компонентам R, G и B
CStart.R = txtRStart
CStart.G = txtGStart
CStart.B = txtBStart
CEnd.R = txtREnd
CEnd.G = txtGEnd
CEnd.B = txtBEnd
' Вызов градиентной заливки
Select Case GradType
Case "Горизонтальная"
Call HorizontalGradient
Case "Вертикальная"
Call VerticalGradient
Case "Диагональная"
Call DigonalGradient
End Select
End Sub

' Горизонтальный градиент
Private Sub HorizontalGradient()
Dim ColorRGB&
Dim i%
' Определение шагов изменения
' каждого цветового компонента
RStep = (CEnd.R - CStart.R) / picW
GStep = (CEnd.G - CStart.G) / picW
BStep = (CEnd.B - CStart.B) / picW
' Задание цвета
For i = 0 To picW - 1
ColorRGB = RGB(CStart.R + RStep * i, CStart.G + GStep * i, CStart.B + BStep * i)
' Рисование очередной линии
picGradient.Line (i, 0)-(i, picH), ColorRGB
Next
End Sub

' Вертикальный градиент
Private Sub VerticalGradient()
Dim ColorRGB&
Dim i%
RStep = (CEnd.R - CStart.R) / picW
GStep = (CEnd.G - CStart.G) / picW
BStep = (CEnd.B - CStart.B) / picW
For i = 0 To picW - 1
ColorRGB = RGB(CStart.R + RStep * i, CStart.G + GStep * i, CStart.B + BStep * i)
picGradient.Line (0, i)-(picW, i), ColorRGB
Next
End Sub

' Диагональный градиент
Private Sub DigonalGradient()
Dim ColorRGB&
Dim i%
RStep = (CEnd.R - CStart.R) / picW
GStep = (CEnd.G - CStart.G) / picW
BStep = (CEnd.B - CStart.B) / picW
For i = 0 To picW - 1
ColorRGB = RGB(CStart.R + RStep * i, CStart.G + GStep * i, CStart.B + BStep * i)
picGradient.Line (picW, picH - i)-(picH - i, picW), ColorRGB
Next
End Sub

Private Sub cmdExit
Click()
Unload Me
End Sub

Алексей(alex13sh) [23.07.2012 13:03]

Екатерина, а зачем всё так усложнять??
или в vb.Net Нет простой функции Rgb(r,g,b) ??????

zabir10 [02.12.2013 12:42]

подскажите пожалуйста, как сделать так, чтобы BUTTON плавно менял цвет ?

Stertor370 [02.12.2013 13:55]

Скины нужно использовать, а если это невозможно, тогда перехватывать событие OnPaint/OnDraw и рисовать как хотите. Но это сложно.



Оставлять комментарии можно только зарегистрированным




Предупреждение: Вся информация представлена исключительно в образовательных целях.
Ни авторы, ни администрация не несут ответственности в случае ее использования в противозаконных целях.