Помогите начинающему

Вопросы программирования и использования MSEide + MSEgui.

Модератор: Модераторы

Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

Вообще многое бы отдал за небольшой курс уроков, даже если бы и на инглише. Хотя бы основы)
==========
Tutorial из SVN смотрели ? Там даже на русском. Правда, там не азы, а серьезная БД-программа.
nagash
новенький
Сообщения: 50
Зарегистрирован: 21.05.2007 08:27:05
Контактная информация:

Сообщение nagash »

смотрел
мне бы именно основы
ну вот типа как статейка "Первая программа" :)

В принципе и сам разберусь, только займет это гораздо больше времени... Да и вопросы опять таки возникают.
Аватара пользователя
Attid
долгожитель
Сообщения: 2588
Зарегистрирован: 27.10.2006 17:29:15
Откуда: 44°32′23.63″N 41°2′25.2″E
Контактная информация:

Сообщение Attid »

ну вот типа как статейка "Первая программа"

на сайте в стаьях смотрел ?

если на инглише то подключайся к ньюз серверу и задавай вопросы напрямую.
nagash
новенький
Сообщения: 50
Зарегистрирован: 21.05.2007 08:27:05
Контактная информация:

Сообщение nagash »

Attid писал(а):на сайте в стаьях смотрел ?

если на инглише то подключайся к ньюз серверу и задавай вопросы напрямую.


Я именно про статью на сайте.

А тут на мои вопросы никто не ответит?
Аватара пользователя
debi12345
долгожитель
Сообщения: 5761
Зарегистрирован: 10.05.2006 23:41:15
Откуда: Ташкент (Узбекистан)

Сообщение debi12345 »

nagash писал(а):1. Как убрать возможность максимизировать окно?

Можно сделать тупо - в событии OnReSize формы :

Код: Выделить всё

procedure tmainfo.onresize(const sender: TObject);
begin
 (sender as tmainfo).bounds_cx:= 550;
 (sender as tmainfo).bounds_cy:= 450;
// если нужно держать позицию - аналогично для bounds_x/y
end;

В MSEgui есть защита от рекурсии событий, напрашивающейся в данном способе.
Как по-науке - спрашивайте у автора в ньюс-конференции.

nagash писал(а):2. Как создать событие типа onmouseover? Т.е. мне нужно, чтобы при наведении курсора на кнопку, к примеру, чуть ниже высвечивались комментарии в tlabel.

Надо использовать событие OnChildMouseEvent формы, на которой эта кнопка находится (потому что в MSEgui только форма является окном, все остальное - просто нарисованные картинки поверх этого окна - поэтому только форма реально принимает события )

Код: Выделить всё

procedure tmainfo.cmevent(const sender: twidget; var info: mouseeventinfoty);
begin
 if sender = tbutton4 then begin // ТА САМАЯ КНОПКА ?
  case info.eventkind of  // КАКОЕ КРЫСИНОЕ СОБЫТИЕ ?
   ek_mouseenter: // ЗАБЕЖАЛИ В КНОПКУ
    tlabel2.caption:= 'within tbutton4';
   ek_mouseleave: // ВЫБЕЖАЛИ
    tlabel2.caption:= 'out of tbutton4';
  end;
 end;
end;


nagash писал(а):А тут на мои вопросы никто не ответит?

Людям реально некогда. Проявляйте инициативу, сами разбирайтесь, доку пишите !
nagash
новенький
Сообщения: 50
Зарегистрирован: 21.05.2007 08:27:05
Контактная информация:

Сообщение nagash »

2 debi12345
Спасибо, с этим разобрался.

Мне тоже реально некогда, это во-первых)
А во-вторых я не думаю что могу быть компетентным в данном вопросе, я умею писать только консольные программы, об интерфейсе имею весьма смутное и приблизительное понятие. И как такой человек как я может писать мануалы по mseide? :)

За помощь реально спасибо, очень помогло.
al_exus
новенький
Сообщения: 24
Зарегистрирован: 20.09.2007 00:18:11

Сообщение al_exus »

(WinXP, SVN 1722, fpc2.2.0)
Очередной затык на пустом месте :( Работаю с SQLite(3.4 или 3.5 - без разницы). В базе две таблицы: sostblud и prods. На датамодуль кидаю и активирую SQLiteConnection (conn), transaction, SQLScript для "attach database". Добавляю sqlquery, подключаю его к conn, в свойство SQL добавляю простой запрос:

Код: Выделить всё

select a.kodsost, a.kodblud, b.nameprod, a.kolprod
 from sostblud a
 left outer join prods b
 on a.kodprod = b.kodprod;

нажимаю Test и получаю Exception: "conn:near "a" :syntax error"

если убираю alias и меняю запрос на

Код: Выделить всё

select kodsost, kodblud, nameprod, kolprod
 from sostblud
 left outer join prods
 on sostblud.kodprod = prods.kodprod;

то Exception: "conn:near "left":syntax error"
Этот же запрос отрабатывает на SQLite и sqliteadmin без ошибок
Получается, что база не открывается, не пойму?

PS. Делаю руководствуясь "roznitsa_new"
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

al_exus
А Вы не пробовали весь запрос в одну строку уложить?
al_exus
новенький
Сообщения: 24
Зарегистрирован: 20.09.2007 00:18:11

Сообщение al_exus »

Пробовал, проблема в чем-то другом, кроме того, в roznitsa_new запрос с джойном на подзапрос в несколько строк работает, он на порядок мощнее моего.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

al_exus
Тогда ещё вопрос. У Вас какая версия FreePascal?
nagash
новенький
Сообщения: 50
Зарегистрирован: 21.05.2007 08:27:05
Контактная информация:

Сообщение nagash »

(WinXP, SVN 1722, fpc2.2.0)
al_exus
новенький
Сообщения: 24
Зарегистрирован: 20.09.2007 00:18:11

Сообщение al_exus »

fpc2.2.0, mseide из SVN 1722
Мне самому не понятно. Вместо такого запроса делаю простой запрос из одной таблицы (пробовал с каждой из двух), работает, ставлю left outer join - exception. В общем - засада.

положил архив проекта http://ifolder.ru/4018005 , он 178кб, гляньте, может свежий взгляд на что-либо наткнется
В дата модуле запрос "querysost" в нем - SQL стринглист
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

В MSEGUI есть каталог patch_fpc_2_2. Вы этот патч использовали?
al_exus
новенький
Сообщения: 24
Зарегистрирован: 20.09.2007 00:18:11

Сообщение al_exus »

Патч использовал (http://freepascal.ru/forum/viewtopic.php?t=2706), сегодня установил fpc2.2.0 release. Exception остался.
Vadim
долгожитель
Сообщения: 4112
Зарегистрирован: 05.10.2006 08:52:59
Откуда: Красноярск

Сообщение Vadim »

Еще вопрос.
У Вас какая версия MSE*?
Ответить