Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Начинающим";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Вниз

Как сделать сплиттер с линией в 1пикс.?   Найти похожие ветки 

 
Kolan ©   (2008-01-09 09:00) [0]

Здравствуйте,
 в гайдлайнах висты сказано, что сплиттер(видимая часть) должен быть толшиной в пиксель. Как такое сделать? Стандартный крутил, вертел — неполучаецца&#133


 
Kolan ©   (2008-01-09 13:30) [1]

Чет вы меня игнорируете :(

Например тут такой сепаратор:
http://www.rsdn.ru/


 
{RASkov} ©   (2008-01-09 15:28) [2]

> [1] Kolan ©   (09.01.08 13:30)
> Чет вы меня игнорируете :(

Это тебе так кажется)

> должен быть толшиной в пиксель. Как такое сделать? Стандартный
> крутил, вертел — неполучаецца…

Просто "смутно все это" (
В D7 нормально все.... фик знает.... Вот:
object Form1: TForm1
 Left = 192
 Top = 114
 Width = 870
 Height = 640
 Caption = "Form1"
 Color = clBtnFace
 Font.Charset = DEFAULT_CHARSET
 Font.Color = clWindowText
 Font.Height = -11
 Font.Name = "MS Sans Serif"
 Font.Style = []
 OldCreateOrder = False
 PixelsPerInch = 96
 TextHeight = 13
 object Splitter1: TSplitter
   Left = 185
   Top = 0
   Width = 1
   Height = 606
 end
 object Panel1: TPanel
   Left = 0
   Top = 0
   Width = 185
   Height = 606
   Align = alLeft
   Caption = "Panel1"
   TabOrder = 0
 end
 object Panel2: TPanel
   Left = 186
   Top = 0
   Width = 676
   Height = 606
   Align = alClient
   Caption = "Panel2"
   TabOrder = 1
 end
end

И при выполнении программы, сплитер именно 1 пикс...


 
Kolan ©   (2008-01-09 15:40) [3]

> И при выполнении программы, сплитер именно 1 пикс&#133

Нет толшина самого контрола — норамально, я хочу сделать его 5 пикс толшиной, но пользователю показывать линию в 1 пикс. Что-то типа свойства сплиттера Beaveled но только такое, чтобы рисовало просмто линию 1 пикс&#133


 
Kolan ©   (2008-01-09 15:50) [4]

Вот сам гайдлайн:
http://msdn2.microsoft.com/en-us/library/aa511281.aspx

ЗЫ
насилу нашел где он&#133


 
{RASkov} ©   (2008-01-09 17:21) [5]

> [3] Kolan ©   (09.01.08 15:40)

procedure TForm1.Splitter1Paint(Sender: TObject);
begin
 with Splitter1.Canvas do begin
  MoveTo(Splitter1.Width div 2, 0);
  LineTo(Splitter1.Width div 2, Splitter1.Height);
 end;
end;

Так не прокатит?


 
Kolan ©   (2008-01-09 17:27) [6]

> Так не прокатит?

Надо попробовать&#133


 
{RASkov} ©   (2008-01-09 17:41) [7]

> [6] Kolan ©   (09.01.08 17:27)
> Надо попробовать…

В качестве "рисования линии" можно попробывать DrawEdge
Я вот так на скорую руку набросал, вроде бы ничего:
procedure TForm1.Splitter1Paint(Sender: TObject);
var R: Trect;
begin
 with Splitter1, Splitter1.Canvas do begin
{   MoveTo(Width div 2, 0);
  LineTo(Width div 2, Height);}
  R:=ClipRect; Dec(R.Right, (Width-2) div 2);
  Inc(R.Top, 10); Dec(R.Bottom, 10);
  DrawEdge(Handle, R, EDGE_ETCHED, BF_RIGHT);
 end;
end;

При вертикальном расположении сплитера и его высоте более 30 и ширине 5
Понятно, что предоставленный код "идиотский", но я только чтоб посмотреть как это будет выглядеть :)
Все эти константы "методом тыка"....)


 
{RASkov} ©   (2008-01-09 17:44) [8]

....Да, и все остальные свойства сплитера по умолчанию, т.е. (Beaveled = False)



Страницы: 1 вся ветка

Форум: "Начинающим";
Текущий архив: 2008.02.03;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.46 MB
Время: 0.062 c
3-1190642401
novill
2007-09-24 18:00
2008.02.03
Как без UDF реализоывать в IB7.5 обрезать строки до нужной длины?


15-1198690334
I am man
2007-12-26 20:32
2008.02.03
MapInfo (ArcView) + delphi


15-1198718830
koha overload
2007-12-27 04:27
2008.02.03
Оцените идею


3-1190772410
costya
2007-09-26 06:06
2008.02.03
Ошибка StackOverflow в FIBDataSet


15-1198483076
wipr
2007-12-24 10:57
2008.02.03
Проблемы с регистрацией Borland Developer Studio 2006





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский