Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > VB6 > !Ошибка VB6 Compile error!


Автор: stasic0640 15.1.2006, 23:14
smile !Ошибка VB6 Compile error!

Заколебала уже эта ошибка, или что это.
Выделяет обращение к ".Тексту". Уже не наю что и делать.Для наглядности чиркнул
чтот простое, да блин, и там эта же ошибка.
Ставил и другой VB6, тоже выдаёт smile
Может кто подскажет, что сделать.






Compile error:

Method or data member not found

Автор: stasic0640 15.1.2006, 23:53
Может кто у ся наклацает прожку какуе-ни с использованием Текс Поля, да и скинет мне... smile

Автор: Gannibal 16.1.2006, 00:23
скинь код.. посмотрим.. .. ;) что можно будет сделать

Автор: cardinal 16.1.2006, 02:38
А у тебя txtOne есть на форме?

Выкладывай код и скажи, что ты от него хочешь...

Автор: stasic0640 16.1.2006, 07:51
smile

Да дело в том, что любой код программы, в которой есть Текстовое Поле, точней обращение к содержимому....

Просто я уже из-за не понятки smile , для наглядности smile написал побыстряку smile , что-то вроде "2+2", и всё равно.... smile

'----------'
Private Sub Calc_Click(Index As Integer)
Dim nOne As Integer, nTwo As Integer, nOtvet As Integer
nOne = Val(txtOne.Text)

nTwo = Val(txtTwo.Text)

nOtvet = nOne + nTwo

txtOtvet.Text = Format(nOtvet, "Fixed")

End Sub

Private Sub Exit_Click(Index As Integer)
End
End Sub
'----------'


Да вон, на скрине всё видно.... smile
Добавлено @ 07:55
Цитата(cardinal @ 16.1.2006, 02:38)
А у тебя txtOne есть на форме?

Выкладывай код и скажи, что ты от него хочешь...

smile Да хочу чтобы он, т.е. Бейсик, не выдавай ошибок smile
А от проги - да это пример, просто сложить 2 числа, и ответ вывести на 3-е Текст.поле.... smile

Автор: boevik 16.1.2006, 08:16
Покажи содержание файла vbp.
У меня подозрение, что потеряна какая либо библиотека.
Открой References и посмотри указана ли какая либо библиотека как missing.

Автор: Flotskiy 16.1.2006, 08:45
Добрый день всем.
stasic0640 Данный код работает.
Всего!

Автор: stasic0640 16.1.2006, 08:57
Цитата(boevik @ 16.1.2006, 08:16)
Покажи содержание файла vbp.
У меня подозрение, что потеряна какая либо библиотека.
Открой References и посмотри указана ли какая либо библиотека как missing.

Подробней насчёт References и missing! (Где искать эти пропавшие линки? smile ) smile
Добавлено @ 09:03
Цитата(Flotskiy @ 16.1.2006, 08:45)
Добрый день всем.
[B]stasic0640[/B ]Данный код работает.
Всего!

Да знаю, что работает, там и работать нечем-то.... Но вот почему у мя не работает? smile
И при том любая прога.... Хотя та которая не имеет ввода инфы-работает. smile
Уже и диск с VB6 новый взял, да и винда со 2-м паком..... smile
Бла, бла, бла..... smile

Автор: boevik 16.1.2006, 20:35
1) Проверь отмечены ли у тебя в References библиотеки:
Visual Basic For Applications
Visual Basic runtime objects and procedures
Visual Basic objects and procedures
OLE Automation

2) Если создашь новый проект - проблема останется?

Автор: stasic0640 17.1.2006, 00:11
2) Если создашь новый проект - проблема останется?

Да, остаётся..... (((( Если бы пропадали....

Автор: Exception 17.1.2006, 00:30
Другие компоненты нормально работают? Чекбоксы там..

Автор: stasic0640 17.1.2006, 07:17
Цитата(Exception @ 17.1.2006, 00:30)
Другие компоненты нормально работают? Чекбоксы там..

smile Да я честно и не наю, мне лежит задача - работа с Текс.Полями..... smile Если не сложно, кинь какой-то код, заранее рабочий, для проверки.... smile

Автор: Flotskiy 17.1.2006, 08:54
Добрый день всем!
stasic0640
Нужно:
Код


Private Sub cmdCalc_Click()


Всего доброго

Автор: stasic0640 18.1.2006, 07:45
Цитата(Flotskiy @ 17.1.2006, 08:54)
Добрый день всем!
stasic0640
Нужно:
Код


Private Sub cmdCalc_Click()


Всего доброго

smile Ничего не понимаю... smile
smile Что тут делать? smile

Автор: Flotskiy 18.1.2006, 14:41
stasic0640stasic0640
У тебя был:
Код

Private Sub cmdCalc_Click(Index As Integer)

(Index As Integer) применяется, если создан массив элемента управления (Calc(1), Calc(2) и т.д.).
Так что замени на:
Код

Private Sub cmdCalc_Click()

Автор: stasic0640 19.1.2006, 08:14
Цитата(Flotskiy @ 18.1.2006, 14:41)
stasic0640stasic0640
У тебя был:
Код

Private Sub cmdCalc_Click(Index As Integer)

(Index As Integer) применяется, если создан массив элемента управления (Calc(1), Calc(2) и т.д.).
Так что замени на:
Код

Private Sub cmdCalc_Click()

smile A, ты на счёт этого.... Такс smile я и так писал, вот только если я убираю (Index As Integer), то выдаёт уже другую ошибку... smile


Автор: Naghual 19.1.2006, 19:13
Вот что я думаю.
stasic0640, второй текстбокс у тебя создан как массив.
Я прав?

Автор: stasic0640 20.1.2006, 00:12
Цитата(Naghual @ 19.1.2006, 19:13)
Вот что я думаю.
stasic0640, второй текстбокс у тебя создан как массив.
Я прав?

А чем отличия от первого у него? Да не, просто создаю.... smile

--------------

Бла, бла......

Вот создаю новый проект, кидаю в форму три тексбокса: 1,2 и ответ, без лейблов, и пару кнопок, на главную ставлю код, тот же.... Итог - Программа заработала.... smile Черт, где же всё-таки бок был....

Что самое интересно - то что в форму не добавляю Лейблов, И НЕ ИЗМЕНЯЮ НИКАКИХ СВОЙСТВ ТЕКСБОКСОВ(ну там, выравнивание, цвет, и остальная мишура внешняя......)

------------

СПАСИБО ГОСПОДА, ЗА АКТИВНОЕ УЧАСТИЕ В ПРОЦЕССЕ ПОМОЩИ....(Привет однополчанам smile )

Автор: Naghual 20.1.2006, 09:55
А отличие в них принципиальное!

Вот на картинке Текст1 - обычный а Текст2 - уже массив.

Ты почитай про это. Многое станет понятно.

Автор: stasic0640 22.1.2006, 07:24
Цитата(Naghual @ 20.1.2006, 09:55)
А отличие в них принципиальное!

Вот на картинке Текст1 - обычный а Текст2 - уже массив.

Ты почитай про это. Многое станет понятно.

smile Там на скрине 2 Вторых поля, в одном 0, в другом единица в скобках... smile И какое из них массив? И как сделать обычны? smile Обьяснишь? smile Буду признателен smile

Автор: cardinal 22.1.2006, 16:55
http://schools.keldysh.ru/vb/less/les17/lesson17.htm

Автор: Naghual 23.1.2006, 10:50
Ну что stasic0640?
Ссылка от cardinal прояснила ситуацию или еще нужна помощь?

Автор: stasic0640 24.1.2006, 07:32
Цитата(cardinal @ 22.1.2006, 16:55)
http://schools.keldysh.ru/vb/less/les17/lesson17.htm


Точно smile , я ж по привычке копирую и вставляю элементы 2мя золотыми клавишами smile , а тут это уже рассматривается как массивность smile , поэтому и вылазила назойливая ошибка smile
smile
---
Cоздание массива элементов управления происходит при копировании элемента управления в буфер обмена. При вставке в ту же форму в ней находится еще и элемент, с которого произведено копирование с тем же именем, что и элемент в буфере обмена. Visual Basic запрашивает, нужно ли создать массив элементов или нужно дать новое имя добавляемому элементу. Если ответить "Нет" Visual Basic поместит в форму элемент управления и даст ему имя по умолчанию, отличное от уже использованного. Если ответить "Да", в форме появятся два элемента с одинаковым именем. Чтобы эти элементы различались, автоматически устанавливается свойство Index.
---

Автор: stasic0640 24.1.2006, 08:36
Цитата(Naghual @ 23.1.2006, 10:50)
Ну что stasic0640?
Ссылка от cardinal прояснила ситуацию или еще нужна помощь?

smile Спасибо, вроде как понял.... smile

Автор: cardinal 24.1.2006, 17:58
Цитата(stasic0640 @ 24.1.2006, 05:32 Найти цитируемый пост)

а тут это уже рассматривается как массивность

Только если скажешь в последующем вопросе "да", а если нет, то все будет как надо... smile

Автор: stasic0640 27.1.2006, 07:29
smile Мужики, спасибо, всё заработало.... smile
Но как всегда появило чтот другое... smile
И возникло несколько вопросов:
- Если я вставляю комментарий в код, то он пчему-то кирилицу не поддерживает, одни иероглифы, если ли лечение этому?
smile Нуна сделать прогу, там, в основном одни расчёты, т.е. расчет курсака одним словом smile
Вот скрин приаттачен, ну чтот там не получается, не хо произведение 2-х чисел в переменную записыватся (Overflow). Но как ставлю + вместо *, то всё проходит... Убрал описание переменных - ничё, вообще не могу раздуплится... Мож кто заметит smile smile

Автор: Naghual 27.1.2006, 10:52
Как обьявленны переменные nS, nLd, nBd?

Автор: Exception 27.1.2006, 18:41
Вообще, одна тема - один вопрос. А насчет кодировки: пользуем поиск, он не зря есть на этом форуме. Тема обсуждается раз в месяц. Нужно в Tools > Options.. на вкладке Editor Eormat установить шрифт, оканчивающийся на CYR.

Автор: Voldemar2004 27.1.2006, 22:13
Цитата(stasic0640 @ 27.1.2006, 07:29 Найти цитируемый пост)

- Если я вставляю комментарий в код, то он пчему-то кирилицу не поддерживает, одни иероглифы,
http://forum.vingrad.ru/index.php?showtopic=65860&hl=%D0%BA%D0%BE%D0%B4%D0%B8%D1%80%D0%BE

Автор: cardinal 28.1.2006, 00:29
На самом деле...
Модератор: Пожалуйста, один топик - один вопрос.

Автор: СВА 28.1.2006, 06:09
stasic0640 объви переменные nS, nLd, nBd не как Integer а как Long ошибка должна пропасть.

Автор: stasic0640 28.1.2006, 07:25
Цитата(Naghual @ 27.1.2006, 10:52)
Как обьявленны переменные nS, nLd, nBd?

Всё, спасибо, разобрался... smile
А эти переменные были как Интенжер... smile
Убрал обьявление переменных - тоже там стопорится, а вот поставил все три как Лонг, прошло.
Вот только, не пойму, почему не проходило, когда я убрал явное обьявление переменных, то все ж пошли как Вариант, а всё-равно там останавливалось... smile
Добавлено @ 07:28
Цитата(СВА @ 28.1.2006, 06:09)
stasic0640  объви переменные nS, nLd, nBd не как Integer а как  Long ошибка должна пропасть.

Да, сенк... smile Интежер до 32767 , а там около 260,000 выходило... smile

Автор: stasic0640 28.1.2006, 07:53
Цитата(Exception @ 27.1.2006, 18:41)
Вообще, одна тема - один вопрос. А насчет кодировки: пользуем поиск, он не зря есть на этом форуме. Тема обсуждается раз в месяц. Нужно в Tools > Options.. на вкладке Editor Eormat установить шрифт, оканчивающийся на CYR.

smile Мир не перевернётся из-за еще парочки вопросов. Что трудно птом тему делануть smile
smile Оки - оки... smile

Автор: Exception 28.1.2006, 12:17
Да тут не в этом дело smile . Просто, если у человека будет такой же вопрос, в поиске он тему не найдет. Кстати. Дам совет smile . Никогда не используй implicit переменные. Это
  • Затрудняет понимание кода.
  • Приводит к труднонаходимым ошибкам.
  • Тормозит программу из-за late binding.
  • Да и вообще, операции с Variant проходят гораздо медленнее.
Короче, всегда ставь в начале кода Option Explicit.
Добавлено @ 12:17
Да тут не в этом дело smile . Просто, если у человека будет такой же вопрос, в поиске он тему не найдет. Кстати. Дам совет smile . Никогда не используй implicit переменные. Это
  • Затрудняет понимание кода.
  • Приводит к труднонаходимым ошибкам.
  • Тормозит программу из-за late binding.
  • Да и вообще, операции с Variant проходят гораздо медленнее.
Короче, всегда ставь в начале кода Option Explicit.

Автор: stasic0640 29.1.2006, 04:38
smile Просто очень много переменных, и я задолбаюсь их обьявлять smile Для этого дела сойдёт и Варианты... smile
Оки smile Тогда вопрос поставлен мною - полностью решён.... smile
Перходим к другим темам... smile

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)