جابجایی اطلاعات بین فرم‌ها در Qt (کیوت)

برای برنامه‌نویسی GUI در Qt (کیوت)، هم می‌توان از طریق کدنویسی و هم از طریق Qt Designer اقدام نمود. بعد از طراحی فرم‌های برنامه، باید بتوان اطلاعات را بین فرم‌ها جابجا نمود. اگر فرم‌ها با Qt Designer ساخته شده باشند، می‌توان با استفاده از سیگنال (Signal) و اسلات (Slot)، اطلاعات را بین فرم‌ها جابجا کرد. کلاسی (فرمی) که فرستندهٔ اطلاعات است، باید یک Signal را emit کند تا Slot مربوطه در کلاس دیگری اجرا شود. در واقع ارتباط بین کلاس‌ها با یکدیگر، از طریق Signal و Slot برقرار می‌شود.

توجه داشته باشید که قبل از emit، باید ارتباط بین Signal و Slot، از طریق QWidget::connect برقرار شده باشد.

اگر فرم‌ها از طریق کدنویسی ساخته شده باشند دیگر نیاز به emit نیست، چون معمولا در یک کلاس این فرم‌ها نوشته می‌شوند. در فایل ضمیمهٔ زیر دو پروژه وجود دارد که عملکرد مشابهی دارند، با این تفاوت که یکی با کدنویسی و دیگری با Qt Designer طراحی شده‌اند.

MD5 checksum:
984b681596d3b43facbb4424d49bdcc6 *passing_data_between_forms.zip