|
|
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Подскажите пожалуйста, как описать объектную переменную и связать ее с имеющимся на форме ListBox. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:00 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:08 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
нет, в этом случае Obj="" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:13 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
В смысле? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:15 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
при пошаговом выполнении программы после прохождения строки Set Obj=List1 значение Obj="" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:17 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
А какое значение вы хотели увидеть у объекта ? Смотрите watch-ем. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:19 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
объектная переменная должна быть связана с элементом List box, потом ее значение передается в процедуру и там происходит заполнение listboxa ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:24 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Да ради бога, передавайте ее куда хотите. В чем проблема-то? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:28 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
проблема в том что не могу присвоить этой чертовой переменной значение List1 ! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:30 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Что значит не можете? Покажите свой код. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:33 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
код примерно следующий: dim Obj as Object set obj=list1 При пошаговом проходжении видно, что LIst1="", cледовательно и Obj="" ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:37 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Гениальный вывод. Код: plaintext 1. 2. 3. 4. 5. 6. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:49 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Tommy1 , вы что-нибудь слышали о default property? советую посмотреть :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:55 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
ну и где же гениальность? ))) ничего не выходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:55 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Konst_One,откровенно говоря о default property я ничего не слышала, объясните в двух словах, пожалуйста )) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:58 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
вы код, что вам написали, попробовали выполнить? что конкретно у вас не выходит, какая строчка кода у вас вызывает ошибку или сомнения? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 17:58 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
F1 - это справка по бейсику ищите там свой List контрол и смотрите какие у него свойства и вам все станет ясно, я надеюсь :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:01 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
код я выполняла, ошибку мне нигде не выдает но когда я физически передаю значение Obj другой процедуре ListBox не заполняется. По-моему, я не правильно описываю объектную переменную, я с этим еще не сталкивалась ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:07 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
F2 - очень полезное окно (см. VB.ListBox в вашем случае) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:07 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
приведите код, которым вы передаете ссылку на вашу объектуную переменную в другую функцию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:08 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
код я переделала dim Obj as VB.ListBox set Obj=Me.List1 и опять тот же результат.... Что-то я отупела ))) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:12 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
и что за проблема? где вы передаете свой obj в другую функцию? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:17 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
в другую процедуру переменную передаю так Call Proc (Obj as Object, Str as str) эта процедура срабатывает без ошибок с нулевым результатом ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:18 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:20 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Public Sub ... сорри, быстро писал ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:22 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
в строке set me.lst=me.list1 выходит сообщение об ошибке method or data member not found ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:27 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
до перехода в другую процедуру дело не дошло )), при загрузке формы вышло сообщение об ошибке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:29 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
на строке set me.lst=me.list1 выходит сообщение об ошибке method or data member not found ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:32 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Вы можете свой код выложить? А еще лучше - проект. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.05.2006, 18:58 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Да уж. Тут ни FAQ не поможет, ни F1. :) А зачем, собственно, передавать обьект в процедуру? И вообще зачем там обьектаная переменная? В любом случае это будет та же ссылка на тот же обьект. Если нужно обратится к контролу на форме из модуля формы, так и пбращайтесь бапрямую. Область видимости позволяет. В чем проблема-то? Ниче не понимаю. Magnus ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 05:23 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Magnus23 А зачем, собственно, передавать обьект в процедуру? И вообще зачем там обьектаная переменная? В любом случае это будет та же ссылка на тот же обьект. Если нужно обратится к контролу на форме из модуля формы, так и пбращайтесь бапрямую. Область видимости позволяет. В чем проблема-то? Ниче не понимаю. Это можно испльзовать в том случае, когда надо сделать однотипные действия с кучей однотипных объектов. Tommy1 на строке set me.lst=me.list1 выходит сообщение об ошибке method or data member not found все правильно. В вашем случае "lst" - это переменная. а не метод обэекта "Me" и надо писать так Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 09:12 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
именно так я делаю, но при прохождении строки set Lst=Me.List1 значение Me.List1="", соответственно и Lst="" и List1 не заполняется, хотя нигде не выходит сообщение об ошибке ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 10:30 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Эх... при прохождении этой строки ткните правой педалью мыши на переменную Lst и выберите Add watch. Это так сложно сделать? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 10:43 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Что именно тебе нжно взять и запихнуть из List1 в lst Private Sub Form_Load() Dim obj As Object Set obj = List1 Debug.Print obj.Name Debug.Print obj.Font.Name End Sub Melkiades показал что ему нужно вывести имя объетка и имя шрифта With Me.lst .Clear .AddItem "Item 1" .AddItem "Item 2" .AddItem "Item 3" .ListIndex = 1 End With Konst_One показал как добавить в объект значение Вопрос смысл создания объект? или ваш код в студию ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.05.2006, 10:51 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Сорри, что реанимирую такую древнюю тему, но вопрос состоит в следующем. У меня есть на форме 3 группы однотипных (внутри группы) контролов (одна группа комбо, две текст). При изменении любого из этих контролов запускается процедура типа: Sub CalcSumChange() Dim maxAdd As Double Dim maxTake As Double Dim minChange As Double maxAdd = txtSumAdd.Value maxTake = txtSumTaking.Value minChange = Worksheets("Параметры счетов").Range("g23").Value 'выполнение проверки сумм пополнения / снятия условиям 'присвоение "знака" движения сумм по счету If cbx1 = "Пополнение" And Len(txtSum1) > 0 Then If Abs(txtSum1.Value) > maxAdd Then txtSum1.Value = Format(Abs(maxAdd), "standard") MsgBox "Сумма пополнения не должна превышать " & Format(Abs(maxAdd), "standard") ElseIf Abs(txtSum1.Value) < minChange Then MsgBox "Минимальная сумма пополнения " & Format(minChange, "standard") txtSum1.Value = Format(minChange, "standard") Else: txtSum1.Value = Format(Abs(txtSum1), "standard") End If ElseIf Len(cbx1) > 0 And Len(txtSum1) > 0 Then If Abs(txtSum1.Value) > maxTake Then txtSum1.Value = Format(-Abs(maxTake), "standard") MsgBox "Сумма cнятия не должна превышать " & Format(Abs(maxTake), "standard") ElseIf Abs(txtSum1.Value) < minChange Then MsgBox "Минимальная сумма снятия " & Format(minChange, "standard") txtSum1.Value = Format(-minChange, "standard") Else: txtSum1.Value = Format(-Abs(txtSum1), "standard") End If Else: txtSum1.Value = Format(0, "standard") End If If cbx2 = "Пополнение" And Len(txtSum2) > 0 Then If Abs(txtSum2.Value) > maxAdd Then txtSum2.Value = Format(Abs(maxAdd), "standard") MsgBox "Сумма пополнения не должна превышать " & Format(Abs(maxAdd), "standard") ElseIf Abs(txtSum2.Value) < minChange Then MsgBox "Минимальная сумма пополнения " & Format(minChange, "standard") txtSum2.Value = Format(minChange, "standard") Else: txtSum2.Value = Format(Abs(txtSum2), "standard") End If ElseIf Len(cbx2) > 0 And Len(txtSum2) > 0 Then If Abs(txtSum2.Value) > maxTake Then txtSum2.Value = Format(-Abs(maxTake), "standard") MsgBox "Сумма cнятия не должна превышать " & Format(Abs(maxTake), "standard") ElseIf Abs(txtSum2.Value) < minChange Then MsgBox "Минимальная сумма снятия " & Format(minChange, "standard") txtSum2.Value = Format(-minChange, "standard") Else: txtSum2.Value = Format(-Abs(txtSum2), "standard") End If Else: txtSum2.Value = Format(0, "standard") End If If cbx3 = ..... 'и так для всех 6 комбобоксов и текстбоксов End If txtTotalSumChange.Value = Format(CDbl(txtSum1) + CDbl(txtSum2) + CDbl(txtSum3) + CDbl(txtSum4) + CDbl(txtSum5) + CDbl(txtSum6), "standard") TotalSum End Sub Почему-то у меня есть уверенность, что тупой перебор имен этих комбо- и текстбоксов можно избежать какой либо процедуркой типа: sub cntrls () dim stri as string dim datei as TextBox dim i as integer for i=1 to 6 stri = "frmMain.txtDate" & i + 1 Set datei.Caption = stri next i end sub Только вот такая процедурка не работает выдавая ошибку "Wrong number of arguments (Error 450)", а как решить эту задачку по упрощению основного кода сама разобраться никак не могу. Есть светлые головы, кто поможет? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 14:41 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Сорри, по-дурацки выложила прошлый раз код Исходный код, который хотелось бы оптимизировать (только в части обработки в цикле однотипных контролов). Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. Мое видение решения проблемы, которое не работает :) Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 14:48 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
используйте коллекцию Controls ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 14:48 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Konst_Oneиспользуйте коллекцию Controls Я еще не программер (и не планирую им стать, но текущие задачи надо решать здесь и сейчас и собственными силами), а только учусь. Что имеется в виду? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 14:51 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
у текущей формы есть объект Controls, в нем все ваши контролы находяться. обращение можно делать по имени контрола Код: plaintext ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 14:53 |
|
||
|
объявление объектной переменной
|
|||
|---|---|---|---|
|
#18+
Konst_Oneу текущей формы есть объект Controls, в нем все ваши контролы находяться. обращение можно делать по имени контрола Код: plaintext то есть на место "txtName1" мне как раз и надо вставить мою строковую переменную, содержащую имя (завязанное на цикл) контрола? Как то так: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Спасибки, работает :) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.01.2009, 15:04 |
|
||
|
|

start [/forum/topic.php?all=1&fid=60&tid=2161461]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
47ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
68ms |
get tp. blocked users: |
1ms |
| others: | 226ms |
| total: | 387ms |

| 0 / 0 |
