+99
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
procedure TForm1.Timer1Timer(Sender: TObject);
var Ras, MinRas, MinC, Comp: Integer;
begin
Ras:=0;
MinC:=0;
MinRas:=0; // всё по нулям
for Comp:=0 to ComponentCount-1 do // цикл по всем компонентам
begin
IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left>TPanel(Components[Comp]).Left) then
Ras:=Panel1.Left-TPanel(Components[Comp]).Left
else
IF (Components[Comp] is TPanel) and (Components[Comp] <> Panel1) and (Panel1.Left<TPanel(Components[Comp]).Left) then
Ras:=TPanel(Components[Comp]).Left-Panel1.Left;
If Ras < MinRas
then begin
MinRas:= Ras; //устанавливаем переменные этой панельки за основные
MinC:= Comp;
end;
end;
if Panel1.top<(TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height) then
Panel1.Top:=Panel1.Top+3; //если панель ниже то допрыгиваем
PROBEL:=Panel1.Top=TPanel(Components[MinC]).Top-TPanel(Components[MinC]).Height
end;
какое-то панельное безумие
bugmenot,
02 Февраля 2011
+75
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
public static String join(String delimiter, String... str) {
StringBuilder buffer = new StringBuilder();
for (String s : str) {
if (!"".equals(s)) {
if (buffer.length() != 0) {
buffer.append(delimiter);
}
buffer.append(s);
}
}
return buffer.toString();
}
String str = (H.join(" на ", category, H.join(" ", super.getMark().toUpperCase(), super.getModel().toUpperCase())) + " " + super.getFrame().toUpperCase() + " " + super.getEngine().toUpperCase()).trim();
чувак явно знает толк в извращениях
zlob.jc,
02 Февраля 2011
+36
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
/**
* Implementation of hook_access().
*
* Node modules may implement node_access() to determine the operations
* users may perform on nodes. This example uses a very common access pattern.
*/
function node_example_access($op, $node, $account) {
if ($op == 'create') {
return user_access('create example content', $account);
}
if ($op == 'update') {
if (user_access('edit any example content', $account) || (user_access('edit own example content', $account) && ($account->uid == $node->uid))) {
return TRUE;
}
}
if ($op == 'delete') {
if (user_access('delete any example content', $account) || (user_access('delete own example content', $account) && ($account->uid == $node->uid))) {
return TRUE;
}
}
}
http://api.drupal.org/api/examples/node_example--node_example.module/6/source
тут еще много.
но факт что те кто это пишут таки нужные люди. сама документация достаточно достоверна
brainstorm,
02 Февраля 2011
−91
- 1
- 2
- 3
import gzip, StringIO
eval (compile (gzip.GzipFile (fileobj = StringIO.StringIO ('\x1f\x8b\x08\x00\xfe\xb9\x0cM\x02\xff\xa5\x93\xdfj\xdb0\x14\xc6\xaf\xeb\xa78\xb9\x8a\xdd\x19\xe1\xac4\x17\x83^\xa4\xa3\x83A\xe8\xc6RV\xc6(\xc2\x7fTWD\x95\x82,/aw\xd9Mo\n\x83\xbd\xc1\xde\xa0\x94\x85m\x8c\xb6\xaf \xbf\xd1\x8e\x1c%\xe9E\xd6\x9b\xd9\xc6\xb2\xbe#\xfd\xce\xd1\'\xb9`\xe7\xa0$\xbd\xe0E\xc1$\xcdjc\xb0\x97\x0b\x9e\x8fY\x01\xe1n\xaa\xcb*z\x11\xecL\xb9\x84\x03(\xcd\x98\x9crY\xa8)\x84Q\xb0\x93y\xe9\xb0\x9d\x05a\xd7~\xb7?\xec\xc2\xfe\xb17\xcd\x97\xe6\x1a\xecm3\xb7\x0b\xb0\x0f\xf6\x97\xfd\x89\x11T\xed=!\xa4\xeb\xe6\x92\xea\xc2c\x84\xc7\x0c\xd3\x8c\x89\xa5B\xb0\x1e\xe6?+f\xa8a3\xe3\xf8\xdf\xb6\x00;\x9d\xce\x12\x98+)Y\xee\xc6\xf9\xfa\xbb1P\xaa\x04\xde1\x84"\x86,\xc2q\x9f25\xf3\t\xdf\x1f\xe2g\xf8\xdc\x8bd\x92\xe6cZ\x99T#"\xdb&\x8a\x95\xb8.\x1dm!i\x81F9\xd9\xf7]\xbd\x13Uq\xc3\x9d\'\xade\xaf\x8f\xe9\xdb7#\xfa\xf2\xe8\xf8\xe4\xe8\x1d\x1d\x0cO\x07\x1fF\xab\xd1+\xd4Dsi\xc0Y\xb8\xb0\xbf\x9b+\\\xdb\x1c\xec\x1d6W\xf8^\xa0\x9f\xf3\xe6\xab\xf3.\x08\n\xdc2\xbf.\x08\xa71\xd4\x15\xd3\xb4HM\xea6j\xdd\x81\x8f\xc9\xd9\x86\xfeH\xee\x9dm\xdc-\x05\xcf\x88\xe1\x97L\xd5\x86\xb6\x0b\xe9%\x89s\r\xe1\x8f\xc0\x8e\x85\xa3}f\x8c9/0Yj\x8c\xae\xd0\xccI*KE\x06\xd8\x1b\xf2\xca\xb4\xe4s\xa5\x81\x03\x9e\x9a\x99\xc6 f\x13\x0c\xdd\x10\xa4\\\xeff\x149\xc4\x92A\xb8\xc4\\(nH\xaf\x94f\xa5V\xb5\xc4\xa2\x9c3!r\nuI\x96\rN\x87]\xe8\xef\xef\xef\xf5\xa3\x18\xfe;\x8e\x0f<\x83\x9e;\x1f\xff\xaag\xc4?\xb3\'*I\xf0B\x12\x9a\xb7m\xa1\xeb\x83\xec\xe8\x1c\xff2VA\xd8f\xdaDd)\x9eH\xb0\xd7O\x1cE3Sk\t\'\xbaf\xc1_\xf0\xb6d\xa4\xbb\x03\x00\x00')).read (), '', 'exec'))
del gzip, StringIO
"Хитрая" пасхалка из моего курсача :)
byss,
02 Февраля 2011
+149
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
mb_internal_encoding('utf-8');
// Внимание, сейчас я покажу вам фокус, который только что открыл.
$request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
$request = substr($request, strpos($request, '<span class="attention">'));
echo mb_substr($request, 0, mb_strpos($request, '</span>')+7);
// Запишем это чуть короче.
$request = 'only eng symbols<span class="attention">Здесь могут быть русские символы</span>blah blah blah';
echo mb_substr(substr($request, strpos($request, '<span class="attention">')), 0, mb_strpos($request, '</span>')+7);
/* Магия интерпретатора PHP!
На абсолютно одинаковый код он нам выдает:
<span class="attention">Здесь могут быть русские символы</span>
<span class="attention">Здесь могут быть русские символы</span>blah blah blah
*/
7ion,
02 Февраля 2011
+158
- 1
- 2
- 3
- 4
- 5
$f=file('[путь к файлу]');
shuffle($f);
$f[0] - первая случайная строка
$f[1] - вторая случайная строка
$f[2] - третья случайная строка
вот PHP еще. если например несколько строк надо. ну и оптимальнее чем предложено выше.
http://megaobzor.com/forum-top-77608.html
Наверху было классическое
$quote=file('words.txt');
echo $quote[rand(0,count($quote)-1)];
Несомненно, оптимальнее. Особенно, если строчек эдак тыщ сто.
Кстати, предлагаю начать очередной холивар по поводу того, как с самыми меньшими затратами вынуть из файла рандомную строчку :)
7ion,
02 Февраля 2011
+164
- 1
- 2
- 3
- 4
- 5
- 6
- 7
$exist = true;
while ($exist) {
$user = 'guest'.rand(1,100000);
if (!Customer::customerExists($email = $user.'@ya.ru'))
$exist = false;
}
Prestashop, хак, убирающий регистрацию. #5476 напомнил.
dew2,
01 Февраля 2011
+164
- 1
$code = $id_user.rand(0,9).rand(0,12).rand(0,32).rand(0,32).rand(0,32).rand(0,32).rand(0,32).".txt";
Стопицотый генератор.
Uchkuma,
01 Февраля 2011
+128
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
//Hint: We have added one more overload to the method Load/LoadBinary/LoadSoap to achieve your requirement. Please refer the below code snippet.
Exception ex = null;
diagram1.LoadBinary(@"..\\..\\Basic Shapes.edp",out ex);
if (ex != null)
{
//Do your customization here
}
индусский обработчик исключений.
поддержка исключений в их компонент была добавлена по нашей просьбе.
kjuby2,
01 Февраля 2011
+160
- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
//перевод целого числа в строку
//num-число
//nn-длина поля
char* num10toc(int num, int nn=4)
{
int i;
int sgmin=0;
int xnum=num;
char* p=lnum;
if (xnum<0)
{
sgmin=1;
xnum=-xnum;
}
memset(lnum,0,WMAX+1);
memset(lnum,0x20,WMAX);
i=lenint(xnum);
int j=i;
int mm=nn-i-sgmin;
if (mm>0)
{
p+=mm;
}
if (sgmin!=0)
{
*p='-';
p++;
}
if (xnum==0)
{
*p='0';
return &lnum[0];
}
while (xnum>0)
{
*(p+i-1)=(char)(xnum%10+0x30);
xnum/=10;
i--;
}
*(p+j)=0;
return &lnum[0];
}
Загадка: что выведется в следующих случаях?
printf("%s\n", num10toc(0, 5));
printf("%s\n", num10toc(1, 5));
printf("%s\n", num10toc(12, 5));
printf("%s\n", num10toc(123, 5));
printf("%s\n", num10toc(1234, 5));
printf("%s\n", num10toc(12345, 5));
printf("%s\n", num10toc(123456, 5));
glprizes,
01 Февраля 2011