Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 20.05.2012, 06:25   #1
Виктория7777
Пользователь
 
Аватар для Виктория7777
 
Регистрация: 02.12.2010
Сообщений: 67
По умолчанию Type of expression must be BOOLEAN

Как можно сделать, что бы например первый раз нажимаешь на label он меняет цвет (становится красным), а второй раз на него уже нельзя нажать и появлялось сообщение или он просто был недоступным. Думала как-то так можно сделать:
Код:
if label11.Color:=clred then label11.Enabled;
или

Код:
if label11.Color:=clred then ShowMessage('повторно нажать нельзя');
И в том и вдругом случае Delphi ругается:
[Error] Unit4.pas(207): Type of expression must be BOOLEAN

В чем может быть проблема?
Виктория7777 вне форума Ответить с цитированием
Старый 20.05.2012, 06:42   #2
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Проблема только в одном: проверка на равенство пишется одним символом "=".
В коде же ":=", а это символ присвоения.
Прик вне форума Ответить с цитированием
Старый 20.05.2012, 07:50   #3
Виктория7777
Пользователь
 
Аватар для Виктория7777
 
Регистрация: 02.12.2010
Сообщений: 67
По умолчанию

Код:
label23.Color:=clRed;
if label23.Color=clred then Application.MessageBox('Билет уже продан', 'Сообщение системы', MB_OK) else Form5.Show;
Исправила.. Но возник ещё один вопрос.
Form5 не запускается, так как label становится красным и сразу вылазит сообщение.

А хотелось бы, что бы сначала он становился красным. И при повторном клике на этот же label вылазило сообщение. Как это можно сделать?
Виктория7777 вне форума Ответить с цитированием
Старый 20.05.2012, 08:04   #4
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Как бы определить с какого перепугу label становиться красным?
Проект нужен.
Прик вне форума Ответить с цитированием
Старый 20.05.2012, 08:12   #5
Виктория7777
Пользователь
 
Аватар для Виктория7777
 
Регистрация: 02.12.2010
Сообщений: 67
По умолчанию

На form4. Через inifile
Вложения
Тип файла: rar PIS.rar (2.46 Мб, 12 просмотров)
Виктория7777 вне форума Ответить с цитированием
Старый 20.05.2012, 08:47   #6
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Цитата:
Form5 не запускается, так как label становится красным и сразу вылазит сообщение
Лабелов в проекте видимо-невидимо. О каком label идет речь?

P.S. А нельзя как-то уйти от этакой прорвы лабелов, которая только запутывает разработку и не дает сосредоточится на важных ее направлениях. Ведь только чтобы понять какой номер лабела к чему относится нужно время немалое.

Опять же вопрос, зачем использовать для хранения занятых мест ини-файл, когда есть БД?
Прик вне форума Ответить с цитированием
Старый 20.05.2012, 09:00   #7
Виктория7777
Пользователь
 
Аватар для Виктория7777
 
Регистрация: 02.12.2010
Сообщений: 67
По умолчанию

Нужны именно те label которые иметируют места. К ним нужно, что бы выводилось сообщение.

Не знаю просто как через БД сделать места(
Так сделать, показалось проще.
Виктория7777 вне форума Ответить с цитированием
Старый 20.05.2012, 09:07   #8
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Проще?
А как быть с разными сеансами? Где будем хранить купленные места для разных сеансов?

Очень бы хотелось помочь, но если не откажетесь от помойки лабелов, вряд ли кто вообще в этот проект полезет. Самоубийца, разве.
Прик вне форума Ответить с цитированием
Старый 20.05.2012, 09:14   #9
Виктория7777
Пользователь
 
Аватар для Виктория7777
 
Регистрация: 02.12.2010
Сообщений: 67
По умолчанию

Подскажите тогда пожалуйста, как через БД это сделать. У меня нет никаких идей, как это можно реализовать(
Виктория7777 вне форума Ответить с цитированием
Старый 20.05.2012, 09:49   #10
Прик
Форумчанин
 
Регистрация: 08.09.2010
Сообщений: 880
По умолчанию

Таблица БД из нескольких полей:
- счетчик,
- дата_сеанса,
- время_сеанса,
- ряд,
- место.
В эту таблицу записываем только купленные места.

Все лабелы, которые имитируют места, если уж приспичило их использовать, нужно создавать динамически и хранить ссылки на них в двумерном массиве.
Через массив манипулировать лабелами проще и намного.
Прик вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Type mismatch in expression SlavaSH БД в Delphi 24 02.05.2012 09:19
Ошибка Unit1.pas(100): Statement expected, but expression of type 'Boolean' found sedoq Общие вопросы Delphi 3 08.02.2012 01:27
Could not convert variant of the type (String) into type (Boolean) Silly Student C++ Builder 0 19.11.2011 13:06
Could not convert variant of type (Olestr) into type (Double) java_91 Общие вопросы Delphi 1 18.02.2011 18:46
Нарисовать красивое окошко. Expression Design, Expression Blend. Векторное изображение. Casper-SC Фриланс 0 09.02.2011 17:59