Форум: "KOL";
Текущий архив: 2003.06.30;
Скачать: [xml.tar.bz2];
Внизо нем Найти похожие ветки
← →
lamachok (2002-10-19 14:27) [0]здрасте... у меня несколько вопросов но они все маленькие и создавать
тему под них нет смысла
1.где можно достать наиподробнейшую инфу по kol
2.обязательно ли писать
допустим {$IFDEF TEST_NOCAPTION}...{$ENDIF} и т.д. я имею ввиду то что
в {..}
3.как растянуть форму на весь экран(и ваабще работа с реестром с файлами
такая же как в дельфи??(без kol))
← →
Gandalf (2002-10-19 16:35) [1]>1.где можно достать наиподробнейшую инфу по kol
Немного есть тут, есть официальный сайт http://xcl.cjb.net/ (там статьи и FAQ),
можно еще установить xHelpGen - пощалуй и все, собственно программирование на КОЛ не так уж и сильно отличается от обычного Дельфи - тут главное улавить общие принципы и готово.
>2.обязательно ли писать
допустим {$IFDEF TEST_NOCAPTION}...{$ENDIF} и т.д. я имею ввиду то что
в {..}
Не понял, это ты про MCK проект или про примеры Кладова (КОЛ)?
В MKC обязательно только то, что генерится само, в примерах у Кладова условная компиляция сделана "для себя" (потому и _TEST_ - тесты это) если тебе не надо, не используй.
>3.как растянуть форму на весь экран(и ваабще работа с реестром >с файлами
>такая же как в дельфи??(без kol))
Максимайз? Ну так поставь свойтсво Максимайз у формы. Или тебе FullScreen - тогда иди в форум Игр - только вопрос не задавай а ищи ответ, поскольку его так часто задавали, что он всем уже надоел. Про работу с реестром и файлами есть тут (статьи) - но что значит без КОЛ? КОЛ без КОЛ, это как?
← →
lamachok (2002-10-20 15:07) [2]все понятно вот написал прогу а теперь хочу написать ее с помошью kol и посмотреть разницу размера перевидите мне пжалуста вот этот фрагмент на kol
procedure TForm1.FormPaint(Sender: TObject);
var y:integer;
blue:byte;
const text=" Корпорация Microsoft";
begin
with form1.Canvas do begin
for y:=0 to form1.Height-1 do begin
blue:=round($ff*(form1.Height-y)/form1.Height);
pen.Color:=rgb(0,0,blue);
moveto(0,y);
lineto(form1.Width-1,y)
end;
font.Size:=32;
font.Style:=[fsbold,fsitalic];
font.Name:="times new roman cyr";
setbkmode(handle,transparent);
font.Color:= clblack;
textout(40,30,text);
font.Color:=clwhite;
textout(36,36,text);
end;
end;
← →
SPeller (2002-10-20 15:52) [3]var y:integer;
blue:byte;
const text=" Корпорация Microsoft";
begin
with form.Canvas do begin
for y:=0 to form.Height-1 do begin
blue:=round($ff*(form.Height-y)/form.Height);
pen.Color:=rgb(0,0,blue);
moveto(0,y);
lineto(form.Width-1,y)
end;
Font.Width := 0;
font.Height:=32; //тут надо ещё подобрать циферу для нужного размера
font.Style:=[fsbold,fsitalic];
font.Name:="times new roman cyr";
setbkmode(handle,transparent);
font.Color:= clblack;
textout(40,30,text);
font.Color:=clwhite;
textout(36,36,text);
end;
end;
← →
lamachok (2002-10-20 19:38) [4]плиз приведи полный код(с прорисовкой всей формы)...
← →
Gandalf (2002-10-20 20:53) [5]Если это MCK, то у компонента KOLForm ставишь код SPeller"а в event OnPaint - и все.
← →
Gandalf (2002-10-20 21:01) [6]Мда... SPeller немного поторопился. Реально код такой:
procedure TForm1.KOLForm1Paint(Sender: PControl; DC: HDC);
var
y:integer;
blue:byte;
const text=" Корпорация Microsoft";
begin
with form.Canvas^ do
begin
for y:=0 to form.Height-1 do
begin
blue:=round($ff*(form.Height-y)/form.Height);
pen.Color:=rgb(0,0,blue);
moveto(0,y);
lineto(form.Width-1,y)
end;
Font.FontWidth := 0;
font.FontHeight:=32; //тут надо ещё подобрать циферу для нужного размера
font.FontStyle:=[fsbold,fsitalic];
font.FontName:="times new roman cyr";
setbkmode(handle,transparent);
font.Color:= clblack;
textout(40,30,text);
font.Color:=clwhite;
textout(36,36,text);
end;
end;
ЗЫ: Размер 28Кб (KOLnMCK), Замена СисБиб 18Кб (KOLnMCK),
ну и РАР потом еще в 2-раза (9Кб), или UGH 9,5Кб. Про VCL я думаю все понимают что >200Кб. Вот и сравнивай.
ЗЗЫ: Правда с прозрачностью кривак, но это дело поправимо.
← →
lamachok (2002-10-21 00:16) [7]нет вы не поняли(да щас код работает).... напишите весь код
я просто не понимаю как его написать с kol(и хачу посмотреть)
← →
SPeller (2002-10-21 00:45) [8]Те ж говорят, поставь МСК и в обработчике какого-нить события (OnPaint, OnClick, etc) вставь вышеприведённый код. Если тебе лень это сделать, то неужели ты думаешь что остальным охота это делать?
← →
SPeller (2002-10-21 00:46) [9]
> я просто не понимаю как его написать с kol
так же как и с VCL - руками :-))
← →
Gandalf (2002-10-21 10:37) [10]Я преодолел лень... Вот полный код, открываешь компилишь. DIXI.
program TestKOL;
uses
windows,
messages,
kol;
var W: PControl;
procedure PaintIt( Dummy : Pointer; Sender: PControl; DC: HDC );
var
y:integer;
blue:byte;
const text=" Корпорация Microsoft";
begin
with Sender.Canvas^ do
begin
for y:=0 to Sender.Height-1 do
begin
blue:=round($ff*(Sender.Height-y)/Sender.Height);
pen.Color:=rgb(0,0,blue);
moveto(0,y);
lineto(Sender.Width-1,y)
end;
Font.FontWidth := 0;
font.FontHeight:=32; //тут надо ещё подобрать циферу для нужного размера
font.FontStyle:=[fsbold,fsitalic];
font.FontName:="times new roman cyr";
setbkmode(handle,transparent);
font.Color:= clblack;
textout(40,30,text);
font.Color:=clwhite;
textout(36,36,text);
end;
end;
procedure TestObjs;
begin
W := NewForm( Applet, "Test" );
W.OnPaint := TOnPaint( MakeMethod( nil, @PaintIt ) );
W.Icon := THandle( -1 );
Run( W );
end;
begin
TestObjs;
end.
← →
HekTo (2002-10-21 14:58) [11]Чтобы избавиться от глюка с прозрачностью замени [I]setbkmode(handle,transparent);[/I] на [I]brush.brushstyle:=bsClear;[/I].
← →
lamachok (2002-10-21 18:03) [12]Вот видите совмесными усилиями вы смогли мне вполне толково обяснить что к чему....
ну и тогда на последок еще спрошу
1.с vcl form1.BorderStyle:=bsNone; а в kol w.Style:=???;
2.вот значит с vcl у меня для того чтобы окно было невозможно закрыть писал в FormClose action:=canone; а как энто в kol сотворить. Сразу скажу я сам пытался
var W: PControl;
procedure Closeit( Dummy : Pointer; Sender: PControl; DC: HDC );
begin
action:=canone;//этого он не понимает
end;
procedure TestObjs;
begin
W := NewForm( Applet, "Test" );
W.Icon := THandle( -1 );
W.OnClose := TOnClose( MakeMethod( nil, @Closeit ));//и тут
Run( W );
end;
begin
TestObjs;
end.
← →
HekTo (2002-10-21 18:39) [13]Ты реально в хелп по колу то загляни, а ? ;)
Какая связь между "procedure Closeit( Dummy : Pointer; Sender: PControl; DC: HDC)" и "TOnClose" ? К тому же там по-моему нужен TOnEventAccept...
Скачай XHElpGen и не мучайся.
← →
Gandalf (2002-10-21 19:04) [14]1.с vcl form1.BorderStyle:=bsNone; а в kol w.Style:=???;
KOLFOrm.HasBorder:=False;
2.вот значит с vcl у меня для того чтобы окно было невозможно закрыть писал в FormClose
procedure Closeit( Dummy : Pointer;Sender: PObj; var Accept: Boolean);
begin
Accept:=False; // Это он понимает
end;
ЗЫ: Начни с MCK, он больше на VCL похож - новые свойства в design-time подъучишь и т.п.
ЗЗЫ: xHelpGen скачай, и почитай статьи на сайте Кладова.
Страницы: 1 вся ветка
Форум: "KOL";
Текущий архив: 2003.06.30;
Скачать: [xml.tar.bz2];
Память: 0.48 MB
Время: 0.007 c