Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

RusFAQ.ru: Программирование на Basic / VBA


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Basic/VBA

Выпуск № 467
от 30.01.2007, 00:05

Администратор:Калашников О.А.
В рассылке:Подписчиков: 243, Экспертов: 38
В номере:Вопросов: 3, Ответов: 5


Вопрос № 72420: Есть вот такой текст: <asp:textbox id="ReviewBody" runat="server" Width="100%" Borderstyle=""Solid"" Height="119px" Rows="15" Columns="80" TextMode="MultiLine" Bord...
Вопрос № 72431: Есть такя часть программы: <asp:DropDownList id="Cmb_KolVo" runat="server" Width="49px"></asp:DropDownLis> -------------------------------------------------------------- В VB.Net прописано объявле...
Вопрос № 72445: Здравствуйте! Как можно узнать на какой форме находится UserControl, при его инициализации. Т.е. нужно получить объект форма. (hwnd не нужен). ...

Вопрос № 72.420
Есть вот такой текст:
<asp:textbox id="ReviewBody" runat="server" Width="100%" Borderstyle=""Solid"" Height="119px" Rows="15" Columns="80" TextMode="MultiLine" BorderColor="#339933" BorderWidth="1px"></asp:textbox>
В VB.NET идет к нему обращение:
ReviewBody.Text
С сожалению если пользователь забывает нажать "Enter" то текст так и идет в одну строчку (как результат сайт вылазит за границы), а мне нужно что бы, когда закончится строчка в текст боксе автоматом добавлялось перевод на новую линию.
Как можно сделать перевод на новую линию в тексте?
Есть какие-нибудь автоматические инструменты для этого в VB.NET?

Отправлен: 24.01.2007, 13:45
Вопрос задал: Alexburzak (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 3)

Отвечает: Alec Perle
Здравствуйте, Alexburzak!
Не знаю как насчет VB.Net, но думаю не многое поменялось. в VB6 (и VBA) я бы использовал функцию типа нежеприведенной. Честно говоря, только накидал и не тестировал, но суть, я думаю, важней. Исходная строка последовательно разбивается на "слова", разделенные пробелами. Слова последовательно записываются в строку-результат. Когда длина строки становится больше заданной, добавляются символы перехода на другую строку (константой vbCrLf).

Приложение:

---------
Пессимист - это хорошо информированный оптимист (а оптимист - хорошо проинструктированный пессимист)

Ответ отправил: Alec Perle (статус: 2-ой класс)
Ответ отправлен: 24.01.2007, 22:16


Вопрос № 72.431
Есть такя часть программы:
<asp:DropDownList id="Cmb_KolVo" runat="server" Width="49px"></asp:DropDownLis>
--------------------------------------------------------------
В VB.Net прописано объявление переменной:
Protected WithEvents Cmb_KolVo As System.Web.UI.WebControls.DropDownList
--------------------------------------------------------------
Идет заполнение данных:
Dim k As Integer
For k = 1 To 50
Cmb_KolVo.Items.Add(k)
Next
--------------------------------------------------------------
Выдает ошибку:
Object reference not set to an instance of an object.
********
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
********
Line 128: Cmb_KolVo.Items.Add(k)
*******
Stack Trace:
[NullReferenceException: Object reference not set to an instance of an object.]
------------------------------------------------------------------------------------
Уважаемые Гуру! Объясните Плиз, что я не так делаю?
Спасибо заранее.
Отправлен: 24.01.2007, 14:51
Вопрос задал: Alexburzak (статус: Посетитель)
Всего ответов: 1
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: AlexanderZh
Здравствуйте, Alexburzak!
Вы не создаете экземпляр класса, а только описываете переменныю.
Попробуйте сделать так:
Protected WithEvents Cmb_KolVo As NEW System.Web.UI.WebControls.DropDownList
(обратите внимание на ключевое слово NEW)
или вставьте в тексте программы (перед использованием переменной)
Cmb_KolVo = NEW System.Web.UI.WebControls.DropDownList
---------
Людей можно поделить на 10 типов: тех, кто понимает двоичную систему и тех, кто нет... © народное
Ответ отправил: AlexanderZh (статус: Студент)
Ответ отправлен: 24.01.2007, 15:24


Вопрос № 72.445
Здравствуйте!
Как можно узнать на какой форме находится UserControl, при его инициализации. Т.е. нужно получить объект форма. (hwnd не нужен).
Отправлен: 24.01.2007, 16:42
Вопрос задал: DragonTusk (статус: 2-ой класс)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: QDSota
Здравствуйте, DragonTusk!

У контрола есть свойство container - это содержащий его обьект... А вот форма это или нет - тут нужно будет смотреть... примерно так:

Dim x
Set x = UserControl.Container
if TypeName(x)="Form" then
msgbox x.Caption
else
set x=x.Container
endif
---------
Открыть глаза навстречу солнцу
Ответ отправил: QDSota (статус: Профессионал)
Россия, Зеленоград
Тел.: 8-916-53-43-916
ICQ: 84611301
----
Ответ отправлен: 24.01.2007, 17:14
Оценка за ответ: 5

Отвечает: Alec Perle
Здравствуйте, DragonTusk!
Msg Box Me.Caption
Ключевое слово Me позволяет обратиться к свойствам и методам самой формы
---------
Пессимист - это хорошо информированный оптимист (а оптимист - хорошо проинструктированный пессимист)
Ответ отправил: Alec Perle (статус: 2-ой класс)
Ответ отправлен: 24.01.2007, 19:25
Оценка за ответ: 3
Комментарий оценки:
абсолютно не то что нужно

Отвечает: Vvvv
Здравствуйте, DragonTusk!
Блин интересно узнать мнение других экспертов, но как поступаю я...
в UserConrol создаётся локальная переменная mvarParent as object, в Class_Terminate добавляю строку set mvarParent = nothing. Далее добавляю пару для работы со свойством

PUBLIC PROPERTY GET PARENT () AS OBJECT
set PARENT = mvarParent
end property

PUBLIC PROPERTY SET PARENT (mVar as object) AS OBJECT

'свойство Parent должно быть Read only
if mvarParent is nothing then
set mvarParent = mvar
' здесь обработка в зависимости от переменной mvarParent

else

end if
end property

далее поступаешь так

public sub Form_Load()
dim myClass as new clsMyClass

set myClass.Parent = me
...
'какойто код
...
set myClass = nothing
end sub

взял из книги Visual Basic 6.0
Наиболее полное руководство для проф работы в среде Visual Basic 6.0
Microsoft Press <БХВ-Питербург> 2004 год

Ответ отправил: Vvvv (статус: 1-ый класс)
Ответ отправлен: 25.01.2007, 14:25
Оценка за ответ: 5


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Идея, дизайн, программирование: Калашников О.А.
Email: adm@rusfaq.ru, Тел.: +7 (926) 535-23-31
ООО "Мастер-Эксперт Про", Москва, 2007
Авторские права | Реклама на портале
Версия системы: 4.43 beta от 26.01.2007
Яндекс Rambler's Top100

В избранное