Текущий архив: 2004.08.15;
Скачать: CL | DM;
Вниз
Подробный и понятный комментарий! Найти похожие ветки
← →
KilkennyCat © (2004-07-13 03:44) [40]Денис, да ты гений! Такое придумал!
← →
Денис (2004-07-13 03:50) [41]мы что в прямом эфире?
← →
KilkennyCat © (2004-07-13 03:55) [42]Не знаю, у меня нет телевизора.
← →
Денис (2004-07-13 04:23) [43]то касается русского DELPHI , твоя идея кажется, - вот создатель Паскаль - молодец!Взял и создал програмный язык на родном языке, на радость и удобство всем англоязычным.
А вам, видите ли, сама мысль об этом смешной кажется.
Конформизм, да и только.
← →
KSergey © (2004-07-13 08:14) [44]> [37] Денис (13.07.04 03:37)
Я же указал адрес! Если есть возможность и желание - подмоги, хороший же сайт. Как раз для новичков. Зачем создавать опять все с нуля? Вполне можно влиться в готовый проект, углУбить и расширить. ;)
← →
Sandman25 © (2004-07-13 10:45) [45][37] Денис (13.07.04 03:37)
Противоречий не видите?
Жаль отлько бедных новичков, многие из которых, возможно талантливей и трудолюбивее всех нас вместе взятых, которые так и не дождуться Базы Подробных Комментариев.
Тогда они просто обязаны выучить английский и изучить нужные им функции.
ЗАЧЕМ ДЕРЖАТЬ В ГОЛОВЕ ВЕСЬ ЭТОТ ХЛАМ?
Вот именно. Вы же не будете требовать от химика выписывание формул всех химических соединений (с комментариями :-), от географа описывания всего ландшафта Земли типа каковы геометрические размеры того холма в Кишиневе, на котором стоит мой дом, от биолога описывания строения всех типов клеток всех видов живых существ?
Талантливый ученый (и программист в том числе) отличается не тем, что все помнит или хотя бы все читал, а тем, что знает и понимает общие принципы своей науки, а при необходимости умеет быстро и правильно пользоваться справочной информацией, загруженной в кратковременную память :)
Поэтому незачем писать комментарии к каждой функции API. Кому понадобится работать с конкретной функцией, тот о ней почитает и разберется. А пока что Вы предлагаете переводить MSDN...
← →
GrayFace © (2004-07-13 10:58) [46]Кто знает их сотню?
Достаточно знать их 50-70 для того чтобы понимать 95% исходников. Половину этой цифры можно узнать, набрав в справке по Delphi "EnumWindows" и нажав "Group".(это то, что тебе сецчас надо делать) При этом параметры этих функций знать не обязательно - F1 - лучший друг программиста. Если вы знаете какое-то стихотворение наизусть, то подсчитайте кол-во слов в нем и сравните скажите, их болше 50? (а судя по вашим "Приветствую Вас, пытливые умы интернета!" вы знаете и не одно) Не пойми меня привратно: я не имел в виду, что такие реплики достойны стихотворения. Я хотел сказать, что это реплики человека, помешанного на литературе.
>Жаль отлько бедных новичков, многие из которых, возможно талантливей и трудолюбивее всех нас вместе взятых, которые так и не дождуться Базы Подробных Комментариев.
Единственное, что тебе надо жалеть - это свои глаза, которые наверняка болят после бессонной ночи. (13.07.04 04:23)
← →
Паниковский © (2004-07-13 11:11) [47]Денис
"Веревка достаточной длины чтобы выстрелить себе в ногу" Голуб
вот эту книжку почитай
посмотри 1С Бухгалтерию как раз язык программирование на русском языке
может тебе стоит писать под бухгалтерию
← →
Паниковский © (2004-07-13 11:12) [48]http://infocity.kiev.ua/m.php?f=0&id=117
кстати ссылка на веревку
← →
NAlexey © (2004-07-13 11:20) [49]>GrayFace © (13.07.04 10:58) [46]
>Я хотел сказать, что это реплики человека, помешанного на литературе.
Ой ли? Высокопарный слог еще ниочем не говорит. Со мной в газельке ехал толи толкиенист толи еще кто нибудь пацифист. Ну может знаешь, у которых цветастой ленточкой длинные волосы на лбу перетянуты. Ну так вот когда ему надо было выйти, он обратился к водителю так:
"Любезный, не могли бы вы остановить свою повозку?". Он не выглядел человеком помешанным на литературе, и реплика его была неуместна, что было видно по лицам пассажиров сидящих в этой самой повозке.
← →
KSergey © (2004-07-13 12:14) [50]> NAlexey © (13.07.04 11:20)
> "Любезный, не могли бы вы остановить свою повозку?".
А назвать колымагой он ее не пробовал? А то бы точно в лоб плучил ;)
← →
Гаврила © (2004-07-13 14:35) [51]
> Сколько функций в WinApi?
> Кто мне заявит, что знает их все?
> Кто знает их сотню?
> Вы знаете сотню?
> А кто знаети их тысячу?
> Ну а кто ещё больше?
> И самое главное, кто мне объяснит - ЗАЧЕМ ДЕРЖАТЬ В ГОЛОВЕ
> ВЕСЬ ЭТОТ ХЛАМ?
Хлам - это когда в коде такие комментарии
begin {начало}
I:=0;{Инициалдизация локальной переменной в 0. В дальнейшем эта переменная будет использована для организации цикла}
end;{конец}
а по API в голове держать ничего не нужно, все написано в справке
← →
Amoeba © (2004-07-13 15:03) [52]
> Денис (13.07.04 04:23) [43]
Родный язык содателя Pascal"я отнюдь не английский, а немецкий.
← →
Юрий Зотов © (2004-07-13 15:31) [53]Денис, а знаете - та самая база подробнейших комментариев по ВСЕМ функциям WinAPI уже давным-давно существует. Причем даже и с примерами. И с механизмами удобного поиска, просмотра, перехода по гиперссылкам и обратно. И даже регулярные обновления выпускаются.
Называется эта база - MSDN. Правда, примеры там на С. А сама база - на английском. Так что придется учить, хотя бы основы.
Понимаете, какая штука... вообще-то, если человек действительно хочет стать программистом, ему так или иначе что-то придется учить. Притом самому.
← →
Денис (2004-07-13 18:22) [54]Нашёл наконец время - отвечаю всем.
Сейчас вы будете иметь удовольствие наблюдать, как ваши доводы рассыпаются в пух и прах.
Поехали:
я че-то непонял... предлагается сделать Великую Универсальную Базу Комментариев На Все Случаи Жизни ?
глупости...
Деиствительно глупости...Мне бы и в голову такое не пришло!
----------------
А подробная каша их ничему не научит.
"подробная каша" не оставит прорех в понимании кода.
-----------------
type {объявляем свои типы}
Слово type переводится как тип.
...Show Message можно перевести как выводим сообщение.
Спасибо за информацию, только во фразе "объявляем свои типы" ключевым словом является не "тип", и даже не
"объявляем ", а то, что именно СВОИ типы, придуманные НАМИ , а не специалистами БОРЛАНД. Понятно?
Рад , что Вы знаете про ShowMessage, а кто то может и не знать. Думаю, что и Вы не родились с этим знанием.
-----------------
Это называется коментариями только потому что это текст заключенный в скобки {} . А на самом деле это не коментарии, это просто описание каждой строчки программы, и никому оно не нужно.
Золотые слова! Обязательно учту.
Только свой коментарий я писал не для Вас - человека знающего, а для тех кто впервые видит например TFindWindowStruct = record - тип запись.
А "идея алгоритма" ни за что не станет понятной тем кто не знает смысла деталей.
------------------------
И вообще в коментариях должно быть указано что делается
> в каком-то участке программы, в процедуре/функции
Здрасте! Именно это у меня и указано.
---------------
Как же вы не заметили такой коментарий:
var
WindowInfo : TFindWindowStruct;{присваиваем тип}
Именно присваиваем тип - нами же выдуманный! См. выше.
------------------------------------
Вообщем, если это делать - зверь-делфи точно сдохнет...
Прекрасно! На очереди С++.
-------------------------------
Во-вторых как работает конкретная функция можно будет догадатсья по контексту...
if Pos(PFindWindowStruct(lParam).Caption, StrPas(lpBuffer)) > 0
then...
Ну-ка догадатесь-ка "по контексту" что такое Pos.
-----------------------------------------------
Надо еще заставить зарубежных коллег, чтоб свои комментарии они тоже на русском писали...
По поводу всех экзерсисов насчёт русификации DELPHI, могу только повторить, что
теоретически идея програмного языка на русском не более смешна, чем на любом другом.
Просто уже это не имеет смысла делать - ежу понятно.
-------------------------
1)за такие коментарии (см первый пост) у меня на работе бы тебе все что можно бы поотрывали! =)
2)коментировать надо логику работы, а не описывать функции.
1)Боже мой, Вы из гестапо!!!
2)Логика работы - это поверхностный обзор если не понимать каждый пункт.
----------------------------
Ба! Знакомые всё лица!...тот же самый Денис, с которым я вот здесь пободался...
Я тоже рад этой неожиданной встрече.
Надеюсь у нас ещё будет возможность "пободаться"!
---------------------
Nous Mellon © (12.07.04 11:14) [32]
LOL
?????
--------------------
Когда-то в книжке по ассемблеру вычитал умную вещь:
Пример бессмысленного коментария:
mov a, 5 ; записать в а 5
Как надо:
mov a, 5 ; установить начальное значение счетчика
Слишком урезанная цитата : то что это именно "начальное значение счетчика" нам здесь не известно.
--------------------------------
Я же указал адрес! Если есть возможность и желание - подмоги, хороший же сайт.
Да был я там!
Всё ещё впереди - не ровен час ещё что нибудь выдумаю.
------------------------------------
Тогда они просто обязаны выучить английский и изучить нужные им функции.
Гм...Это что новый указ такой вышел?
Талантливый ученый (и программист в том числе) отличается ...тем, что знает и понимает общие принципы своей науки, а при необходимости умеет быстро и правильно пользоваться справочной информацией, загруженной в кратковременную память :)
Ну слов нет!
А "общие принципы своей науки" он как узнает, родится с ними что ли? Именно общие принципы эффективно постигаются на примерах, а не при чтении MSDN и прочих справочников!
Поэтому незачем писать комментарии к каждой функции API. Кому понадобится работать с конкретной функцией, тот о ней почитает и разберется. А пока что Вы предлагаете переводить MSDN...
"...почитает и разберется"! Вот именно, а пример вроде моего избавит его от лишнего чтения и разбирательств, которые в виду сложности формулировок да ещё на английском не всегда проходят успешно.
--------------------
...Достаточно знать их(функций) 50-70 для того чтобы понимать 95% исходников.
Ой ли? Применительно к стихам: если Вы знаете 50-70 слов скажем на французском, то врядли вы поймёте хотя бы 10% французской литературы.
C"est justеment?
Mersi pour vous soin des mes yeux, je travaile par la nuit souvent.
(Спасибо за заботу о моих глазах, я часто работаю по ночам.)
--------------------------------
...а по API в голове держать ничего не нужно, все написано в справке
Вот ведь любители по справкам шариться! А ведь куда приятнее разбирать исходничек, а за ним второй, третий, и ни каких справок...
Справки хороши в поисках собственного алгоритма.
-------------------
Родный язык содателя Pascal"я отнюдь не английский, а немецкий.
Вот ведь в лужу сел!
Что же это получается - этот немец(или кто там австриец?) тоже родного языка стеснялся?
Конфуз однако...
----------------------
Денис, а знаете - та самая база подробнейших комментариев по ВСЕМ функциям WinAPI уже давным-давно существует.....и т.д. и т.п...
...Называется эта база - MSDN. Правда, примеры там на С. А сама база - на английском. Так что придется ...
Ну вот вернулись всё к тому же: MSDN , английский да ещё и С (что особенно приятно для новичков).
Да я сам эти С - примеры просматриваю, и ни чего удобного в этом не нахожу.
И вообще, товарищи, разве разобравшись в каком нибудь интересном примере, не доставляет удовольствия поделиться своим маленьким открытием со всем человечеством, от мала до велика!
И так что бы понял каждый, даже самый тупой, вроде меня.
А иначе какой смысл в проделанной умственной работе?
И какой смысл публиковать пример, объясняя его так, что он понятен лишь тем, кто в пояснениях, а может и в самом этом примере уже не нуждается?
Вам не жалко потерянного на пример времени? Вы многое поняли при этом?
Да всё это уже до вас давно кто то понял! И если бы не поленился детально объяснить - сохранил бы вам и время и выкуренные сигареты.
Вам не нравится моя манера пояснений - предложите свою!
Только не надо ссылаться на всякие MSDN , SDK, ЁКЛМН и ОПРСТ.
Вот типичная инфа из справочника по WINAPI:
function GetWindowLong(Wnd: HWnd; Index: Integer): Longint;
Считывает инфоpмацию об окне или о значениях дополнительного байта окна.
Паpаметpы:
Wnd: Идентификатоp окна.
Index: Смещение в байтах .
Возвpащаемое значение: Инфоpмация, хаpактеpная для окна.
Это же ужас какой то!
Что считывает? Что возвращает? Какую то цифирку Longint?
Вы знаете? Если да, то думаю, что не из этой справки!
И это ещё на русском.
Какие ещё будут мнения?
← →
Гаврила © (2004-07-13 18:29) [55]В нормальной английской справке по API описание GetWindowLong исчерпыввающие. То что вы нашли - это не справка а фуфло
> Вот ведь любители по справкам шариться! А ведь куда приятнее
> разбирать исходничек
Посмотрел бы я на вас, если бы Борланд не включил в комплект поставки Delphi справку, а предложыл бы копаться по кодам, закомментированным подобным образом... вы бы взвыли моментально
← →
Mystic © (2004-07-13 18:33) [56]Пять секунд поиска и получаем:
GetWindowLong
The GetWindowLong function retrieves information about the specified window. The function also retrieves the 32-bit (long) value at the specified offset into the extra window memory.
If you are retrieving a pointer or a handle, this function has been superseded by the GetWindowLongPtr function. (Pointers and handles are 32 bits on 32-bit Windows and 64 bits on 64-bit Windows.) To write code that is compatible with both 32-bit and 64-bit versions of Windows, use GetWindowLongPtr.
LONG GetWindowLong(
HWND hWnd, // handle to window
int nIndex // offset of value to retrieve
);
Parameters
hWnd
[in] Handle to the window and, indirectly, the class to which the window belongs.
nIndex
[in] Specifies the zero-based offset to the value to be retrieved. Valid values are in the range zero through the number of bytes of extra window memory, minus four; for example, if you specified 12 or more bytes of extra memory, a value of 8 would be an index to the third 32-bit integer. To retrieve any other value, specify one of the following values. Value Action
GWL_EXSTYLE Retrieves the extended window styles. For more information, see CreateWindowEx.
GWL_STYLE Retrieves the window styles.
GWL_WNDPROC Retrieves the address of the window procedure, or a handle representing the address of the window procedure. You must use the CallWindowProc function to call the window procedure.
GWL_HINSTANCE Retrieves a handle to the application instance.
GWL_HWNDPARENT Retrieves a handle to the parent window, if any.
GWL_ID Retrieves the identifier of the window.
GWL_USERDATA Retrieves the user data associated with the window. This data is intended for use by the application that created the window. Its value is initially zero.
The following values are also available when the hWnd parameter identifies a dialog box. Value Action
DWL_DLGPROC Retrieves the address of the dialog box procedure, or a handle representing the address of the dialog box procedure. You must use the CallWindowProc function to call the dialog box procedure.
DWL_MSGRESULT Retrieves the return value of a message processed in the dialog box procedure.
DWL_USER Retrieves extra information private to the application, such as handles or pointers.
Return Values
If the function succeeds, the return value is the requested 32-bit value.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
If SetWindowLong has not been called previously, GetWindowLong returns zero for values in the extra window or class memory.
Remarks
Reserve extra window memory by specifying a nonzero value in the cbWndExtra member of the WNDCLASSEX structure used with the RegisterClassEx function.
For an example, see Creating, Enumerating, and Sizing Child Windows.
Requirements
Windows NT/2000 or later: Requires Windows NT 3.1 or later.
Windows 95/98/Me: Requires Windows 95 or later.
Header: Declared in Winuser.h; include Windows.h.
Library: Use User32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
See Also
Window Classes Overview, Window Class Functions, CallWindowProc, GetWindowLongPtr, RegisterClassEx, SetParent, SetWindowLong, WNDCLASS
← →
Юрий Зотов © (2004-07-13 18:46) [57]Правильно, Денис! Так их всех! И не фиг учить всякие там английские, да еще и Си впридачу! И книжки тоже не фиг читать. И MSDN надо в помойку выбросить!
А вот это - просто шедевр:
Именно общие принципы эффективно постигаются на примерах, а не при чтении MSDN и прочих справочников!
Правильно! Так их всех! Уря!
← →
Тимохов © (2004-07-13 18:52) [58]"грустно - до чего же ламерство окрепло" (с) Igorek, 2004
← →
Igorek © (2004-07-13 19:02) [59]
> Тимохов © (13.07.04 18:52) [58]
Спасибо, это будет моя фраза года!!! ЛОЛ
> Юрий Зотов © (13.07.04 18:46) [57]
> Правильно, Денис! Так их всех! И не фиг учить всякие там
> английские, да еще и Си впридачу! И книжки тоже не фиг читать.
> И MSDN надо в помойку выбросить!
Он такого не говорил вроде.
Кстати мой напарник знает английский не очень. Но программист неплохой. И логику высказываний часто понимает даже без знания конкретных переводов вонкретных слов.
> А вот это - просто шедевр:
> Именно общие принципы эффективно постигаются на примерах,
> а не при чтении MSDN и прочих справочников!
Толика истины есть в этом.
← →
Григорьев Антон © (2004-07-13 19:15) [60]Эх, такой ответ написал! А форум глюканул, всё пропало. Повторю, но короче.
1. Зарезервированное слово type может использоваться только для объявления своих типов, типы Борланда здесь ни при чём. Кто этого не понимает - идёт читать умные книжки, за компьютер ему садиться рано.
2. Кто не знает, что такое record, не знает, и что такое "тип запись", и подобный комментарий ему ничего не скажет. Вывод - сначала читаем умные книжки, потом садимся разбирать исходники. Всё равно написать такие комментарии, чтобы код понял даже тот, кто основ программирования не знает, не получится.
3. Оригинальная документация по Windows и по Delphi поставляется исключительно на английском. Объём документации такой, что пока её будут переводить, она устареет. Поэтому, хотите вы этого или нет, но программист должен знать английский на том уровне, чтобы читать MSDN.
4. Глупо требовать от физика-ядерщика, чтобы он писал свои статьи на уровне, понятном для уборщицы. Также глупо требовать от программиста, чтобы его код был понятен неподготовленным людям. При решении действительно сложных задач результат часто не можешь объяснить просто потому, что человек не понимает самой постановки задачи. Так что рассказывать о своих победах, конечно, можно и иногда даже нужно, но не стоит при этом ориентироваться на тех, кто не знает базовых вещей.
5. Про GetWindowLong я тоже писал, но Mystic меня опередил, не буду повторяться.
← →
Style © (2004-07-13 20:07) [61]Предлагаю всем ИТ отделам добавить новую должность в штат - Комментатор.
В обязанности которого входили бы не только написание ППК(Подробного и понятного комментария(С)), но и непосредственное участие в ежедневных докладах вышестоящему руководству организации о проделаной работе, в виде листинга достаточного объема с использованием ППК.
Плюс в ППК, можно было бы включать:
1)Требования о повышении заработной платы.
2)Служебные записки
3)Жалобы и предложения
4)Заявления и заявки!
Что значительно увеличило бы производительность программистов и снизило бы нагрузку с отдела кадров..
:0)
← →
Igorek © (2004-07-13 20:39) [62]А я предлагаю другую должность - РАСКОММЕНТАТОР.
Если комментарии:
есть - удалить
нужны - переделать код что б не были нужны
← →
Денис (2004-07-13 20:40) [63]Уважаемый Антон.
Вот Вам кусочек кода в котором после слова type вовсе не идут объявления своих типов:type
TForm1 = class(TForm) Edit1: TEdit;
Edit2: TEdit; Label1: TLabel;
Label2: TLabel; Label3: TLabel;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
и т.д.
Но Ваши точные знания достоины восхищения, без шуток.
А комментарий "тип запись" именно и укажет какую тему следует человеку изучить.
Да за английский я обеими руками, товарищи!
Только для понимания инфы ,оперативно найденной Mystic, знания языка может оказаться мало.
Боюсь, что и в переводе то она будет тяжела.
А языки учить - это превосходно!
Кстати по части Комментатора: вот бы футбольные болельщики заявили , мол а на кой шиш он нужен? И так всё видно на экране!
А кто футбол не понимает - читать книжки...по хоккею!
Простите за упрямство, но ни одного разумного довода против я пока ещё не дождался.
В основном одно и тоже: это МНЕ понятно, это МНЕ не надо...
Рад в десятый раз за вас, господа, что вам не нужно пояснять такую простую програмку!
А если так же подробно(вплоть до ShowMessage) раскомментировать и сложную, то она будет понятна и любому новичку!
Может дело попросту в том , что боимся мы родимые, что нас так незаслуженно быстро догонит поколение новичков, а господа?
← →
VMcL © (2004-07-13 21:00) [64]>>Денис (13.07.04 20:40) [63]
Вот Вам кусочек кода в котором после слова type вовсе не идут объявления своих типов:
type
TForm1 = class(TForm) Edit1: TEdit;
Edit2: TEdit; Label1: TLabel;
Label2: TLabel; Label3: TLabel;
Label4: TLabel;
Button1: TButton;
Button2: TButton;
и т.д.
Да, верно. Здесь нет объявления своих типов. Здесь идет объявление одного типа, а именно своего нового типа TForm1.
← →
nikkie © (2004-07-13 21:02) [65]>...боимся мы родимые, что нас так незаслуженно быстро догонит...
нас не догонят... (c)ТаТу
Денис, не надоело клоунствовать здесь? ну найди себе новичков, которые будут заглядывать тебе в рот восхищенно, когда ты им будешь объяснять, что функция ShowMessage показывает сообщение.
то, что ты предлагаешь работающему программисту в реальном коде будет только мешать. если ты этого не понимаешь, то мои тебе соболезнования. если же хочешь сделать урок для начинающих раскомментировав код - в чем проблема? регистрируешь сайтик на народе и начинаешь там выкладывать уроки. определись только, какой уровень предполагаемой аудитории и чему ты ее хочешь научить.
а в реальном программировании требуются совсем другие комментарии, о чем тебе уже десять раз уже сказали.
← →
Григорьев Антон © (2004-07-13 21:23) [66]
> Вот Вам кусочек кода в котором после слова type вовсе не
> идут объявления своих типов:
Ошибаетесь. Это именно объявление своих типов. Просто эксперт сгенерировал кусок кода за вас. А смысл тот же.
> А комментарий "тип запись" именно и укажет какую тему следует
> человеку изучить.
Слово record справится с этим не хуже.
> А если так же подробно(вплоть до ShowMessage) раскомментировать
> и сложную, то она будет понятна и любому новичку!
Не будет. Для примера - напишите такой комментарий к вызову функции CoMarshalInterThreadInterfaceInStream, чтобы новичок, ничего не знающий о COM и о нитях вообще, мог понять, зачем в программе понадобился вызов этой функции. Объём такого комментария будет сравним с хорошей статьёй. Потому что нужно знать предметную область и понимать прежде всего постановку задачи, тогда и решение можно понять. А если человек не понимает, в чём проблема, то объяснять ему решение - задача неблагодарная. Большинство ключевых действий гораздо сложнее, чем ShowMessage, поэтому и написать разумный комментарий к ним не получится.
> В основном одно и тоже: это МНЕ понятно, это МНЕ не надо...
А вам не кажется, что в данном случае это гораздо более серьёзный аргумент, чем это выглядит на первый взгляд. Ведь никто из нас не родился с готовым знанием, что такое type или record. И мы помним об этом, потому что ходим на такие сайты и в меру своих сил помогаем новичкам. Кто-то только отвечает на вопросы, кто-то ещё и статьи пишет, но как-то пытаемся сделать то, что, по нашему мнению, поможет новичкам. И когда мы дружно говорим, что это не нужно (ведь вы не нашли ни одного единомышленника!), значит, что-то в нашем опыте подсказывает, что пользы от этого не будет. В Королевстве Delphi я вам уже написал, что не променял бы свой опыт постижения методом проб и ошибок на готовые работающие примеры с объяснением, как они работают. И объяснил, почему: процесс поиска ценен сам по себе, потому что он даёт опыт самостоятельного решения задач, опыт, который практически невозможно получить, начиная с задач сложных. И излишне подробный комментарий может создать у новичка иллюзию понимания, в то время как понимания-то и не будет.
> var
> WindowInfo : TFindWindowStruct;{присваиваем тип}
А комментарии типа этого вообще вредны, потому что дезинформируют. Здесь мы не присваиваем тип, а обхявляем переменную заданного типа.
P.S. Прошу прощения у всех участников форума за то, что я здесь присвоил себе право говорить не только за себя, но и за всех сразу. Надеюсь, я не сказал ничего такого, что могло бы вызвать обиду.
← →
Mystic © (2004-07-13 21:26) [67]Представил исходник:
Value := GetWindowLong(Handle, 0);
{The GetWindowLong function retrieves information about the specified window. The function also retrieves the 32-bit (long) value at the specified offset into the extra window memory.
If you are retrieving a pointer or a handle, this function has been superseded by the GetWindowLongPtr function. (Pointers and handles are 32 bits on 32-bit Windows and 64 bits on 64-bit Windows.) To write code that is compatible with both 32-bit and 64-bit versions of Windows, use GetWindowLongPtr.
LONG GetWindowLong(
HWND hWnd, // handle to window
int nIndex // offset of value to retrieve
);
Parameters
.........................
Return Values
If the function succeeds, the return value is the requested 32-bit value.
If the function fails, the return value is zero. To get extended error information, call GetLastError.
If SetWindowLong has not been called previously, GetWindowLong returns zero for values in the extra window or class memory.
Remarks
Reserve extra window memory by specifying a nonzero value in the cbWndExtra member of the WNDCLASSEX structure used with the RegisterClassEx function.
For an example, see Creating, Enumerating, and Sizing Child Windows.
Requirements
Windows NT/2000 or later: Requires Windows NT 3.1 or later.
Windows 95/98/Me: Requires Windows 95 or later.
Header: Declared in Winuser.h; include Windows.h.
Library: Use User32.lib.
Unicode: Implemented as Unicode and ANSI versions on Windows NT/2000.
See Also
Window Classes Overview, Window Class Functions, CallWindowProc, GetWindowLongPtr, RegisterClassEx, SetParent, SetWindowLong, WNDCLASS}
SetWindowLong(Handle, 0, NewValue);
<it>{.......</it>
Боюсь, что и в переводе то она будет тяжела.
А ты попробуй ;) К тому же твои коментарии это в основном та же строка из помощи.
Понимаешь, если человек не знает, что секция type объявляет типы данных, определенных пользователей, то боюсь, что назначение функции GetWindowLong будет для него тайной за семью печатями. В том же MSDN перед примером идет две-три страницы описания того, что в примере делается (отдельным текстом, не коментарием), а только потом текст примера.
← →
VMcL © (2004-07-13 21:32) [68]Лично я с
>>Григорьев Антон © (13.07.04 19:15) [60]
>>Григорьев Антон © (13.07.04 21:23) [66]
согласен.
← →
Mim1 © (2004-07-13 22:37) [69]Чтото я не понял что от нас автор хочет?
Тварюгу завалить или еще что?
← →
Style © (2004-07-13 22:46) [70]>>Завалим толпою этого зверюгу - Delphi!
Что-то народ не совсем ту зверюгу толпой валит :)
← →
Lenor (2004-07-13 23:23) [71]Да нас же всех посадят за жестокое обращение с животными!..
← →
VMcL © (2004-07-14 00:16) [72]>>Lenor (13.07.04 23:23) [71]
А он первый на нас напал! Так что это самооборона.
← →
KilkennyCat © (2004-07-14 02:26) [73]
> Денис (13.07.04 20:40) [63]
> Может дело попросту в том , что боимся мы родимые, что нас
> так незаслуженно быстро догонит поколение новичков, а господа?
Мне кажется, что автор сей ветки не знает ничего :) и хочет нас заставить написать комментарии, чтоб "незаслуженно быстро догнать" :))
А лично я ни от кого не убегаю... Иду своей дорогою.
← →
Юрий Зотов © (2004-07-14 06:11) [74]> Может дело попросту в том , что боимся мы родимые, что нас так
> незаслуженно быстро догонит поколение новичков, а господа?
LOL.
Денис, Вы просто не представляете себе величину этого разрыва. Понимаете, человек, которому еще нужно рассказывать про "тип запись" уже не догонит меня ни-ко-гда.
Вернее, когда-нибудь, конечно, догонит, но только я этого уже не увижу. Столько не живут.
А раз так - чего ж мне его бояться-то?
← →
Паниковский © (2004-07-14 07:06) [75]Mystic
как то ветка была как увеличить обьем исходников
вот по мойму очень даже красивое решение!! ))
Денис
Попробую угадать:
1 ты не давно начал програмиировать.
2 тебе что то сразу не понравилось ты решил это зделать по своему.
если выше перечисоенное так зделай такую штуку напиши игру!!!!
прикинь своя игра!
← →
Паниковский © (2004-07-14 07:07) [76]эту бы энергию и в мирных целях...
← →
KSergey © (2004-07-14 08:59) [77]> [76] Паниковский © (14.07.04 07:07)
> эту бы энергию и в мирных целях...
Вот и я про то же... уже и намекал ему, вроде корректно... Ан нет, не хочет...
> [54] Денис (13.07.04 18:22)
> --------------------
> Когда-то в книжке по ассемблеру вычитал умную вещь:
>
> Пример бессмысленного коментария:
> mov a, 5 ; записать в а 5
> Как надо:
> mov a, 5 ; установить начальное значение счетчика
>
> Слишком урезанная цитата : то что это именно "начальное
> значение счетчика" нам здесь не известно.
Вообще-то цитата дословная, ничего не урезано.
Если вам не понятно... ну простите. Авторы не имели возможности (желания?) писать пространнее... Скажу больше, мне - понятно.
← →
Style © (2004-07-14 09:19) [78]
> Слишком урезанная цитата : то что это именно "начальное
> значение счетчика" нам здесь не известно.
Да, просто не для больших умов написано :)
← →
Nikolay M. © (2004-07-14 10:03) [79]Имхо, автор - лентяй и демагог. Если это не провокация и не развод, конечно.
В следующем топике он предложит собраться всем программистам и написать Универсальную Базу Всевозможных Функций (с Подробнейшими Комментариями, конечно), из которых будет лепиться любая программа? :)
← →
Anatoly Podgoretsky © (2004-07-14 11:21) [80]> Как надо:
> mov a, 5 ; установить начальное значение счетчика
А надо не так, а
mov a, {Name}CounterStartValue
Для Паскаля
for I:= CounterStartValue to CounterEndValue do
и ни каких комментариев, ни здесь ни в других местах не понадобится.
Страницы: 1 2 3 4 5 6 7 8 9
вся ветка
Текущий архив: 2004.08.15;
Скачать: CL | DM;
Память: 0.7 MB
Время: 0.052 c