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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 08.12.2011, 23:03   #1
Cassius
Пользователь
 
Регистрация: 04.12.2009
Сообщений: 28
По умолчанию дайте совет!



как сделать чтоб по нажатию картинки выходили данные в красном квадрате , данные в базе *.dbm. в красном компонент DBText.

примерно что хочу видеть
form2.showmodal;
pnumber:=5;
по изменению порядкового номера, чтоб и данные менялись в красном квадрате.
Cassius вне форума Ответить с цитированием
Старый 08.12.2011, 23:11   #2
Stilet
Белик Виталий :)
Старожил
 
Аватар для Stilet
 
Регистрация: 23.07.2007
Сообщений: 57,097
По умолчанию

А что это за картинка? Какой компонент используется?
I'm learning to live...
Stilet вне форума Ответить с цитированием
Старый 08.12.2011, 23:14   #3
Cassius
Пользователь
 
Регистрация: 04.12.2009
Сообщений: 28
По умолчанию

Image. нажимаешь на элемент. вылазит форма след (с красным квд.)
Cassius вне форума Ответить с цитированием
Старый 08.12.2011, 23:16   #4
Cassius
Пользователь
 
Регистрация: 04.12.2009
Сообщений: 28
По умолчанию

Цитата:
Сообщение от Stilet Посмотреть сообщение
А что это за картинка? Какой компонент используется?
Image. нажимаешь на элемент. вылазит форма след (с красным квд.)
Cassius вне форума Ответить с цитированием
Старый 09.12.2011, 05:50   #5
Slym
Участник клуба
 
Регистрация: 07.12.2011
Сообщений: 1,025
По умолчанию

form2.ТвойКвери.Params.ParamByBame( 'pnumber').Value:=5;
form2.ТвойКвери.Requery;
а DBText зацепи на ДатаСурс прицепленый к ТвойКвери
Не стесняемся, плюсуем!
Slym вне форума Ответить с цитированием
Старый 10.12.2011, 02:02   #6
Небесный
Зелень
Форумчанин
 
Аватар для Небесный
 
Регистрация: 03.02.2007
Сообщений: 302
По умолчанию

Я например у себя что-то подобное делал так:

На каждый Image'х писал в свойствах tag = 1, 2, ..колличество_Image

Далее делал процедуру обработки клика, например.


Код:
procedure TForm1.OneClick(Sender: TObject);
var
  image: TImage;
begin
  if Sender is TImage then
    image:=Sender as TImage;
  ShortOneClick(image.tag); //где тег Image передавал другой процедуре, 
  //Вы же можете в свою очередь здесь открывать форму и передавать ей номер тега нажатого Image'a
end;
Далее в каждом Image в OnClick я указывал свою процедуру OneClick

И еще не забудьте объявить свою процедуру вверху в блоке type
Типа так.
Код:
procedure OneClick(Sender: TObject);
Надеюсь, чем-то поможет.

Правда это сделано было для групки (10) Image, в вашем случае лепить сотню Image - не рационально. (((
Одним Image даже не знаю, как и обойтись, разве что как-то по-пиксельно пробовать разбирать, где был клик.

Последний раз редактировалось Небесный; 10.12.2011 в 02:06.
Небесный вне форума Ответить с цитированием
Старый 10.12.2011, 02:43   #7
Willer55
Пользователь
 
Регистрация: 17.08.2011
Сообщений: 35
По умолчанию

Я не знаю правильно или нет подсказываю, но можно разбить один image на клетки и сделать матрицу со значениями(какой элимент в этой клетке) и при нажатии на image проверять в каком месте был клик и относительного этого берем элемент из матрицы.
и дальше открываем вторую форму и передаем.
Код:

const
// Размеры клетки на imag'e
  CELL_W = 32; 
  CELL_H = 32;

var
  Form1: TForm1;
  matrixElem : array[0..9,0..9]of integer; // матрица элементов
implementation

{$R *.dfm}
// Тут нету функции заполнения матрицы, она берется из базы
procedure TForm1.Image1MouseUp(Sender: TObject; Button: TMouseButton;
  Shift: TShiftState; X, Y: Integer);
begin
  GetElem(x,y); // получаем элемент
end;

procedure TForm1.GetElem(x,y :integer);
var
  x1,y1, elem : integer;
begin
  x1 := image1.Width div CELL_W;
  y1 := image1.Height div CELL_H;
  elem := matrixElem[x1,y1]; // получаем сам элемент
  // и тут запускаем Форму и передаем elem
end;
Извините если не понятно. Я новичок здесь.
Willer55 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Дайте совет kettanaito Свободное общение 7 21.08.2011 23:37
Дайте совет Михаил70 Свободное общение 17 14.09.2009 20:52
Дайте совет по процессорам microlab Компьютерное железо 3 23.11.2008 14:02
Дайте совет! Arch100 Помощь студентам 2 11.10.2008 01:40