Sonunda, etkinleştirilmiş olan Win7 64'teki Delphi XE (Güncelleştirme 1) sorununu yeniden oluşturmayı başardım. Boyut, .DFM dosyasında yanlış ayarlanmış gibi görünüyor ve Ribbon
, el ile yeniden boyutlandırmayı desteklemediğinden, görsel olarak IDE
(düzgün çalışma zamanında görünse bile)
veya Object Inspector
'da düzeltemezsiniz. Zaman zaman çalışma zamanında düzgün görünüyor, ancak bu da sporadik görünüyor.
Ribbon
ürününü tasarlamayı imkansız hale getirdiğinden, bu çok kötü bir hatadır. RibbonGroup
öğelerini ekleyebilir ve ActionManager
'u atayabilir ve Structure Pane
'u kullanarak tamamen deneyin ve tasarlayabilirsiniz, ancak bu pratik bir çözüm değildir.
Neyse ki, yapmak zorunda olmak can sıkıcı olsa da oldukça kolay bir çözüm var. :)
Ben çalışması için aşağıdaki geçici çözümü elde etmek için iki kez başardı ama birkaç kez çalışmaya başarısız baştan başlamak, bu yüzden onun etrafında olası bir yoldur (hayır sözler - XE çalıştı, sürekli XE2 Güncelleme 2 başarısız) :
Ribbon
'a sağ tıklayın ve en az bir sekme ekleyin.
- IDE'de formu sağ tıklayın ve içerik (açılır) menüsünden
View as Text
'u seçin.
.dfm
metninde Ribbon
denetimini bulun vekodunu 200
'a atanan IDE'den Height
değiştirin. (Bir sonraki adım olarak değiştirecektir, ama sorun değil - 200
düzeltmeleri acil sorunu.)
- tekrar sağ tıklayın ve
View as Form
seçin ve Ribbon
düzgün görüntülenmesi gerekir. Ben TCustomRibbon.GetCaptionHeight
bunu takip, özellikle bu GetSystemMetrics
çağrısı gibi görünüyor
FCaptionHeight := Max(GetSystemMetrics(SM_CYCAPTION), 26);
-
(QC#101642 sorun da vardır gibi ben XE2 Güncelleme 2 karşı qc bildirdi) belirli Win7 yapılandırmalarında 26
'dan daha az bir şey döndürüyor (yine de neden olduğunu anlayamıyorum bile). Bu yöntemde, sonucu değiştirmiş gibi görünen birkaç yorum var, ancak yorumlandığımı söylediğim gibi.
garip kısmı TCustomRibbon.Create
yılında, Height
Result := cRibbonHeight + GetCaptionHeight;
setleri GetRibbonMetric(rmFullHeight)
bir çağrı tarafından ayarlandığını ve cRibbonHeight
cRibbonHeight = 117;
olarak tanımlanan bir sabittir.
Sonunda bunu takip ettiğimi düşünüyorum. TRibbon
tarafından yapılan açıklamada, bir published
özellik bildirimi var: bu varsayılan olduğu için
published
...
property Height default TCustomRibbon.cRibbonHeight;
, başka herhangi bir değer yukarıda belirtilen GetRibbonMetric
çağrısı (TCustomRibbon.Create
yukarıda belirtilen bakınız) olmaz anlamına geldiğini görünür ve GetSystemMetric
numaralı çağrıdan gelen garip sonuç, 26
hatalı değerinin 'diğer değer' olarak kaydedilmesine neden olur. garip; AM'deki QC'yi günceller. Ek 1: Ek ayrıntılar içeren QC raporunu güncelleyin. Ek: QC raporu opened Mayıs 2012'de, ancak XE5 Güncelleme 1 (kontrol edilen Ocak 2014) olarak çözümlenmemiş gibi görünmektedir.
Tuhaf geliyor. Tam olarak anlattığın şeyi yaptım ve mükemmel davrandı. –
Ya, çoğu insan için böyle olacağını düşündüm, çünkü bunu demolarda görüyorum! Ancak, benim için çalışmıyor. Onun Delphi 2010 kusurlu bir sürümü var neredeyse. Ben tam bir kaldırma ve Delphi 2010 yeniden yükledim ve hala aynı şekilde davranıyor – IElite
Bu daha önce hiç görmedim, bunu yapmamalı. –