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

Delphi Sources



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

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 30.09.2011, 12:26
Terney Terney вне форума
Прохожий
 
Регистрация: 30.09.2011
Сообщения: 7
Репутация: 10
По умолчанию Нарисовать сеть координат. Delphi

Код практически полностью переписал с учебника. Событие onpaint есть. Ошибок не найдено. Но после запуска программы форма все равно остается пустой.. аналогично пробывал через image и paintbox, результат тот же ..нужна добрая помощь!
Код:
unit Unit1; 

interface 

uses 
 Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, 
 Dialogs, ExtCtrls, StdCtrls, ComCtrls, Mask; 

type 
 TForm1 = class(TForm) 
 Panel3: TPanel; 
 Panel4: TPanel; 
 Label2: TLabel; 
 Label3: TLabel; 
 Label4: TLabel; 
 Edit1: TEdit; 
 ud1: TUpDown; 
 procedure FormPaint(Sender: TObject); 
 private 
 { Private declarations } 
 public 
 { Public declarations } 
 end; 

var 
 Form1: TForm1; 
implementation 

{$R *.dfm} 

 procedure TForm1.FormPaint(Sender: TObject); 
 var 
 x0, y0: integer; 
 dx, dy: integer; 
 h, w: integer; 
 x, y: integer; 

 lx, ly: real; 
 dlx, dly: real; 
 cross: integer; 
 dcross: integer; 
begin 
 x0 := 30; 
 y0 := 220; 
 dx := 40; 
 dy := 40; 
 dcross := 1; 
 dlx := 1.0; 
 dly := 1.0; 

 h := 200; 
 w := 300; 

 with form1.Canvas do 
 begin 
 cross := dcross; 
 MoveTo(x0, y0); 
 LineTo(x0, y0 - h); 
 MoveTo(x0, y0); 
 LineTo(x0 + w, y0); 

 x := x0 + dx; 
 lx := dlx; 
 repeat 
 MoveTo(x, y0 - 3); 
 LineTo(x, y0 + 3); 
 cross := cross - 1; 
 if cross = 0 then 
 begin 
 TextOut(x - 8, y0 + 5, FloatToStr(lx)); 
 cross := dcross; 
 end; 
 Pen.Style := psDot; 
 MoveTo(x, y0 - 3); 
 LineTo(x, y0 - h); 
 Pen.Style := psSolid; 
 lx := lx + dlx; 
 x := x + dx; 
 until (x > x0 + w); 

 y := y0 - dy; 
 ly := dly; 
 repeat 
 MoveTo(x0 - 3, y); 
 LineTo(x0 + 3, y); 
 TextOut(x0 - 20, y, FloatToStr(ly)); 
 Pen.Style := psDot; 
 MoveTo(x0 + 3, y); 
 LineTo(x0 + w, y); 
 Pen.Style := psSolid; 
 y := y - dy; 
 ly := ly + dly; 
 until (y < y0 - h); 
 end; 
end; 

end.
Админ: Пользуемся тегами для оформления кода!

Последний раз редактировалось Admin, 30.09.2011 в 12:35.
Ответить с цитированием
  #2  
Старый 30.09.2011, 12:39
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

хорошие новости: код работает
Ответить с цитированием
  #3  
Старый 30.09.2011, 12:44
Terney Terney вне форума
Прохожий
 
Регистрация: 30.09.2011
Сообщения: 7
Репутация: 10
По умолчанию

И в чем может быть причина? Юзаю Delphi 7
Ответить с цитированием
  #4  
Старый 30.09.2011, 12:59
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

в том что панель закрывает форму
PHP код:
.-????`-.
,?         
`.
|            \
|             \
\           
_  \
,\  
_    ,??,/?)\
\ \,? ,? ,??)
 `
._,)     -?,-?)
   \/         ,?/
    )        / /
   /       ,?-? 

Последний раз редактировалось Pyro, 30.09.2011 в 13:18.
Ответить с цитированием
  #5  
Старый 30.09.2011, 13:22
Terney Terney вне форума
Прохожий
 
Регистрация: 30.09.2011
Сообщения: 7
Репутация: 10
По умолчанию

да пробовал и без панели.. совершенно никакой разницы.. только панели нет ..sad
Ответить с цитированием
  #6  
Старый 30.09.2011, 13:26
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

?_________
Вложения
Тип файла: 7z qweqweqwe.7z (1.1 Кбайт, 5 просмотров)
Ответить с цитированием
  #7  
Старый 30.09.2011, 13:46
Terney Terney вне форума
Прохожий
 
Регистрация: 30.09.2011
Сообщения: 7
Репутация: 10
По умолчанию

Amazing!! You are fairytale superhero! ..в общем буду разбираться)
Ответить с цитированием
  #8  
Старый 30.09.2011, 13:49
Pyro Pyro вне форума
Так проходящий
 
Регистрация: 18.07.2011
Сообщения: 805
Версия Delphi: 7Lite
Репутация: 6063
По умолчанию

наверно проблема в том что события надо создавать мышкой, перепечатыванием их не создать
Ответить с цитированием
  #9  
Старый 05.10.2011, 20:18
Terney Terney вне форума
Прохожий
 
Регистрация: 30.09.2011
Сообщения: 7
Репутация: 10
По умолчанию

[Empty]....

Последний раз редактировалось Terney, 06.10.2011 в 07:17.
Ответить с цитированием
Ответ


Delphi Sources

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

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

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

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


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


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

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

ВКонтакте   Facebook   Twitter