Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 27.01.2017, 21:37
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
Восклицание Что то не так))

Ребята всем привет
наверно кому то покажется смешным но я хочу одну вещь понять

есть глобальная переменная
var
status_text: string;

в нем сохраняю слово полученное из результата некой процедуры
а вот после выполнения
image1.canvas.textout();

слово в переменной заменяется на то что в Form1.Caption

это почему? вроде нигде присваивания нету
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #2  
Старый 27.01.2017, 22:03
Аватар для Bargest
Bargest Bargest вне форума
Профессионал
 
Регистрация: 19.10.2010
Адрес: Москва
Сообщения: 2,390
Версия Delphi: XE3/VS12/FASM
Репутация: 14665
По умолчанию

Ошибка в строке 84 твоего кода.
__________________
jmp $ ; Happy End!
The Cake Is A Lie.
Ответить с цитированием
  #3  
Старый 27.01.2017, 22:05
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
По умолчанию

Цитата:
Сообщение от Bargest
Ошибка в строке 84 твоего кода.
о чем это ты?
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #4  
Старый 27.01.2017, 22:48
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Повторил подобную ситуацию - сохранил "слово полученное из результата некой процедуры" и "вот после выполнения image1.canvas.textout();" на полотне имиджа появилась надпись, что в textout была послана с координатами заданными там же и изменений в status_text не наблюдалось - вывод: что-то происходит в тельце "некой процедуры", а что именно, неведомо
Ответить с цитированием
  #5  
Старый 27.01.2017, 23:08
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
Восклицание

Цитата:
Сообщение от Alegun
Повторил подобную ситуацию - сохранил "слово полученное из результата некой процедуры" и "вот после выполнения image1.canvas.textout();" на полотне имиджа появилась надпись, что в textout была послана с координатами заданными там же и изменений в status_text не наблюдалось - вывод: что-то происходит в тельце "некой процедуры", а что именно, неведомо

Код:
with Form1.Image1.Canvas do
  begin
    font.Color := $00A7A7A9; // connected
    font.Size := 36;
    font.Name := 'Tahoma';
    font.Quality := fqAntialiased;
    font.Style := [fsbold];
    font.Height := -48;
   //showmessage(status_text);
    if ( status_text = 'Connected!' ) then
    begin
      TextOut(38, 19, status_text);
    end;

Эта процедура выполняется всего один раз
если разрешить выполнение showmessage первый раз вижу слово Connected! а на второй уже оно такое как у Form1.Caption
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #6  
Старый 27.01.2017, 23:19
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
По умолчанию

Я проверил каждую строку кода
не могу понять если глобальная переменная не используется вообще то нет к нему обращение или присваивание - почему она самостоятельно берет значение Form1.Caption???
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #7  
Старый 27.01.2017, 23:23
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Цитата:
Сообщение от Electronic_Arts
Эта процедура выполняется всего один раз
если разрешить выполнение showmessage первый раз вижу слово Connected! а на второй уже оно такое как у Form1.Caption
А у меня даже после пяти showmessage и до и после отрисовки содержимое переменной не изменяется, что только не делал - может покажете как происходит наполнение status_text, может где-то ей .Caption чей-то передаётся, а делфя думает что он от формы
Ответить с цитированием
  #8  
Старый 27.01.2017, 23:27
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
Восклицание

Цитата:
Сообщение от Alegun
А у меня даже после пяти showmessage и до и после отрисовки содержимое переменной не изменяется, что только не делал - может покажете как происходит наполнение status_text, может где-то ей .Caption чей-то передаётся, а делфя думает что он от формы
Отыскал наконец
глобальной переменную назови просто text: string проверь по умолчанию ему присваивается Form1.caption
оказывается глобальной переменной не может быть "text" по умолчанию в библиотеке VCL text присваивается название ФОРМЫ))))
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
  #9  
Старый 27.01.2017, 23:35
Аватар для Alegun
Alegun Alegun вне форума
LMD-DML
 
Регистрация: 12.07.2009
Адрес: Богородское
Сообщения: 3,025
Версия Delphi: D7E
Репутация: 1834
По умолчанию

Понятно, банально нарушено соглашение о зарезервированных именах переменных
Ответить с цитированием
Этот пользователь сказал Спасибо Alegun за это полезное сообщение:
Electronic_Arts (28.01.2017)
  #10  
Старый 28.01.2017, 09:05
Аватар для M.A.D.M.A.N.
M.A.D.M.A.N. M.A.D.M.A.N. вне форума
Sir Richard Abramson
 
Регистрация: 05.04.2008
Сообщения: 5,505
Версия Delphi: XE10
Репутация: выкл
По умолчанию

Цитата:
Сообщение от Electronic_Arts
Отыскал наконец
глобальной переменную назови просто text: string проверь по умолчанию ему присваивается Form1.caption
оказывается глобальной переменной не может быть "text" по умолчанию в библиотеке VCL text присваивается название ФОРМЫ))))
Точно в VCL? Только в FireMonkey видел, чтоб заголовки назывались text.
__________________
— Как тебя понимать?
— Понимать меня не обязательно. Обязательно меня любить и кормить вовремя.


На Delphi, увы, больше не программирую.
Рекомендуемая литература по программированию
Ответить с цитированием
  #11  
Старый 01.02.2017, 20:20
Аватар для Electronic_Arts
Electronic_Arts Electronic_Arts вне форума
Местный
 
Регистрация: 13.07.2006
Адрес: на земле
Сообщения: 559
Версия Delphi: XE5
Репутация: 18
Восклицание

Да в VCL.Forms она костанта объявлена.
__________________
Нет ничего не возможного. Вопрос только во времени...
Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 10:00.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter