Visual Basic, .NET, ASP, VBScript
 

   
   
     

Форум - Общий форум

Страница: 1 |

 

  Вопрос: Про цвет в Visual Basic Добавлено: 25.10.04 13:03  

Автор вопроса:  Gog | ICQ: 288876730 
Как написать программу чтобы
Имеем один большой текстбокс и маленький из маленького в большой чтобы не только данные сохранялись но еще и цвет
Text1.text=text2.text
........................

Ответить

  Ответы Всего ответов: 13  

Номер ответа: 1
Автор ответа:
 someone



Вопросов: 215
Ответов: 1596
 Web-сайт: 123
 Профиль | | #1
Добавлено: 25.10.04 13:17
непонял. как это понять
большой текстбокс и маленький из маленького в большой чтобы не только данные сохранялись но еще и цвет

Ответить

Номер ответа: 2
Автор ответа:
 Gog



ICQ: 288876730 

Вопросов: 6
Ответов: 14
 Профиль | | #2 Добавлено: 25.10.04 14:18
Sory, времени мало было не правильно написала .
Не большой и маленький, а обычные текстбоксы, только размеры мышкой откорректированные. И еще добавлю:
про text1.forecolore я знаю. А вопрос такой: каждый раз, когда добвляю новый текст с VBCrlf, в другом текстбоксе сохраняются не только новые и старые данные, но и цвет этих данных. А когда пишеш text1.forecolor=text2.forecolor,
то при вводе новых данных, цвет всего текста(и старых и новых данных)меняется на цвет ново занесенных данных.

Ответить

Номер ответа: 3
Автор ответа:
 Alexander



Вопросов: 19
Ответов: 118
 Профиль | | #3 Добавлено: 25.10.04 14:38
Ну понимаеш есть такая специфика у текстбокса что он не может держать в себе текст более чем одного цвет так что вот те код на использование

Option Explicit
Private Declare Function LockWindowUpdate Lib "user32" (ByVal hwndLock As Long) As Long
Dim lngPos As Long, strRight As String, strLeft As String, arrWords() As String, lngIndex As Long
Private Const strWords As String = "BFG" 'Blue light

Private Sub Form_Load()
    lngPos = 1
    txtmain.RightMargin = 100000
End Sub
Private Sub Form_Resize()
    txtmain.Move 0, 0, ScaleWidth, ScaleHeight
End Sub

Private Sub txtmain_Change()
arrWords = Split(strWords, " ";)
    LockWindowUpdate txtmain.hWnd
    txtmain.SelStart = 0
    txtmain.SelLength = Len(txtmain.Text)
    txtmain.SelColor = vbBlack
    For lngIndex = LBound(arrWords) To UBound(arrWords)
        While Not InStr(lngPos, LCase(txtmain.Text), LCase(arrWords(lngIndex))) = 0
            lngPos = InStr(lngPos, LCase(txtmain.Text), LCase(arrWords(lngIndex)))
            txtmain.SelStart = lngPos - 1
            txtmain.SelLength = Len(arrWords(lngIndex))
            strRight = Mid(txtmain.Text, lngPos + Len(arrWords(lngIndex)), 1)
            If lngPos = 1 Then strLeft = " " Else strLeft = Mid(txtmain.Text, lngPos, 1)
            If (strRight = " " Or strRight = "," Or strRight = "" Or strRight = ";(" Or strRight = Chr(13)) Or (strLeft = " " Or strLeft = "" Or strLeft = Chr(32)) Then txtmain.SelColor = vbBlue 'color functions
            lngPos = lngPos + 1
        Wend
        lngPos = 1
    Next
    lngPos = 1
    While Not InStr(lngPos, txtmain.Text, "'";) = 0 ' green
        On Error Resume Next
        lngPos = InStr(lngPos, txtmain.Text, "'";) ' green
        txtmain.SelStart = lngPos - 1
        If Not InStr(lngPos, txtmain.Text, vbCrLf) = 0 Then txtmain.SelLength = InStr(lngPos, txtmain.Text, vbCrLf) - lngPos Else txtmain.SelLength = Len(txtmain.Text)
        If lngPos = 1 Then strLeft = " " Else strLeft = Mid(txtmain.Text, lngPos - 1, 1)
        If Not strLeft = Chr(34) Then txtmain.SelColor = vbGreen ' color
        lngPos = lngPos + 1
    Wend

    txtmain.SelStart = Len(txtmain.Text) '+ 1
    LockWindowUpdate 0
End Sub

Private Sub txtMain_KeyPress(KeyAscii As Integer)
    txtmain.SelColor = vbBlack
End Sub

только не забудь добавить в компонентах RichTextBox,

называется кажется Microsoft RichTextBox control,
имя присвой txtmain

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

Ответить

Номер ответа: 4
Автор ответа:
 LamerOnLine



ICQ: 334781088 

Вопросов: 108
Ответов: 2822
 Профиль | | #4 Добавлено: 25.10.04 15:15
Так ты хочешь для каждой строчки разный цвет? Не выйдет. TextBox этого не
позволяет. Юзай Microsoft RichTextBox Control.

Ответить

Номер ответа: 5
Автор ответа:
 Alexander



Вопросов: 19
Ответов: 118
 Профиль | | #5 Добавлено: 25.10.04 17:29
2 LamerOnLine ты вообще читал предыдуший мессадж?
да?,так перепрочти 8-6 строчкиу снизу, не это не хамство но там уже все написано, причем еще и
с примером, зачем дублировать?

Ответить

Номер ответа: 6
Автор ответа:
 mc-black



ICQ: 308-534-060 

Вопросов: 20
Ответов: 1860
 Web-сайт: mc-black.narod.ru/dzp.htm
 Профиль | | #6
Добавлено: 25.10.04 17:53
Короче какая кому разница... в общем человеку нужен интерфейс цветного чата. Можно на RTB, можно ещё на чем-то..

Ответить

Номер ответа: 7
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #7 Добавлено: 25.10.04 19:43
У DaSharm'a ведь есть отличный HTML-чат?
Почему бы за основу не взять его?

Ответить

Номер ответа: 8
Автор ответа:
 Gog



ICQ: 288876730 

Вопросов: 6
Ответов: 14
 Профиль | | #8 Добавлено: 26.10.04 14:19
U DaSharm'a ? A gde eto?On na Visual Basic napisan?
Esli da to eto to chto nuwno.

Ответить

Номер ответа: 9
Автор ответа:
 Gog



ICQ: 288876730 

Вопросов: 6
Ответов: 14
 Профиль | | #9 Добавлено: 26.10.04 14:39
Ogromnoe sposibo Alexsandr!!!! No esli tebe ne trudno, mog by (hotja by v kracii)objasnit vkluchaja interfays, esli chestno funkcii ne sovsem znakomy, hotja esli pomuchujus razberus, no esli ne trudno..........

Ответить

Номер ответа: 10
Автор ответа:
 Alexander



Вопросов: 19
Ответов: 118
 Профиль | | #10 Добавлено: 26.10.04 18:21
DaSharm это LocalHost.co.nr
а как функции ползовать напишу как время будет,
а оно у меня будет завтра с утра.
если будет...
но дожно быть...

Ответить

Номер ответа: 11
Автор ответа:
 ZagZag



ICQ: 295002202 

Вопросов: 87
Ответов: 1684
 Профиль | | #11 Добавлено: 26.10.04 18:35
Сайт, ув. товарища Dasharm'a
http://www.localhost.co.nr/

Ответить

Номер ответа: 12
Автор ответа:
 Alexander



Вопросов: 19
Ответов: 118
 Профиль | | #12 Добавлено: 27.10.04 08:04
Private Sub Command1_Click()
    txtmain.SelColor = RGB(0, 0, 256)
End Sub

цвета задаеш в SelColor.

Ответить

Номер ответа: 13
Автор ответа:
 Gog



ICQ: 288876730 

Вопросов: 6
Ответов: 14
 Профиль | | #13 Добавлено: 28.10.04 14:42
Это я знаяju. Мне вот не понятно, что из чего добавлять, что где писать(в смысле в интерфейсе), чтобы в большом текстбоксе добавлись новые данные и вместе с ними их цвет.(Как данные добавлять я знайу, просто это для ясности задачи.)
Просто у тебя в программе клик не через кнопку( а у меня через) поэтому возникаjuт вопросы...........

Ответить

Страница: 1 |

Поиск по форуму



© Copyright 2002-2011 VBNet.RU | Пишите нам